Перейти к основному содержимому

IT лексика

Начальный уровень
Интерактив

Демо ниже — нажимайте кнопки и смотрите, как это устроено. Ничего на компьютере не меняется.

Загрузка интерактивного демо…

IT лексика

Вы пришли в новую страну. Вокруг всё интересно: дома не такие, как у Вас, люди ездят на необычных машинах, едят незнакомую еду. Но самое странное — они говорят на другом языке. Не по-русски. Может быть, по-английски, по-японски или даже на каком-то совсем особом — как в фантастическом фильме. Вы слышите слова, но не понимаете, что они значат. И тогда Вы либо молчите, либо начинаете учить язык этой страны.

С IT — почти так же.

Когда Вы начинаете изучать информационные технологии, Вы попадаете в особую "страну" — страну кода, компьютеров, программ и данных. И у этой страны тоже есть свой язык. Он не совсем отдельный — он встроен в обычный русский (или английский, или любой другой), но состоит из особых слов, которые в повседневной жизни почти не встречаются. Их называют IT-лексикой (от греч. lexis — "слово", "речь"). Это набор ключевых слов и выражений, без которых невозможно говорить по-настоящему о том, как работают компьютеры и программы.


Почему так много английских слов?

Коротко: потому что "страна IT" родилась в основном на английском языке.

Современные компьютеры, интернет, первые языки программирования — всё это появилось в США и других англоязычных странах. Когда учёные и инженеры писали первые программы, они использовали английские слова: run — "запустить", file — "файл", error — "ошибка". Так было удобнее — ведь наука и техника уже давно общались на английском. Потом эти слова распространились по всему миру. В русском языке их не перевели — просто начали произносить по-русски, но писать как в оригинале.

Например:

"Запусти программу" → "Run программу".
"Сохраните документ" → "Save документ".
"У меня bug" → "В программе ошибка".

Это не "модно" и не "высокомерно" — просто так сложилось исторически, и менять это уже слишком поздно: миллионы программ, книг, инструкций написаны именно так. К счастью, почти все эти слова очень простые, и их легко выучить — как пароли к разным уровням игры.

Именно этим мы сейчас и займёмся.


Немного важнейших ключевых слов

Ниже — не просто список. Каждое слово — это ключ. Мы рассмотрим его:

  • как оно пишется и произносится (с транскрипцией на русский манер — не идеально, но чтобы начать),
  • что означает на самом деле (в реальной работе),
  • где и когда его используют,
  • и как его можно представить в голове, чтобы запомнить надолго.

File [файл]

Что значит: документ, запись, единица информации. Фотография, текстовый документ, музыкальный трек, программа — всё это файлы.
Контекст:

"Не забудь сохранить файл перед закрытием".
"Где Вы сохранили файл с проектом?"
Почему так? Слово пришло от английского to file — "кладать в папку", "архивировать". В старых офисах документы складывали в файлы (папки-скоросшиватели). Потом этот термин перекочевал в компьютеры.
Как запомнить: Представьте толстую папку-скоросшиватель — файл. Внутри — листы. В компьютере — тоже файл, только цифровой.


Save [сэйв]

Что значит: сохранить. То есть — записать текущее состояние на диск, чтобы не потерять.
Контекст:

"Save изменения, иначе всё пропадёт".
Нажмите Ctrl+S, чтобы save.
Важно: Save — это "зафиксировать текущий вариант". Если Вы изменили текст и не сделали save, при выключении компьютера изменения исчезнут.
Аналогия: Как запечатать письмо в конверт. Пока не запечатал — можно что-то дописать. Запечатал (saved) — готово к отправке.


Run [ран]

Что значит: запустить, заставить работать. Программа "лежит" на диске — как книга на полке. Чтобы она сделала что-то, её нужно run.
Контекст:

"Run программу двойным кликом".
В редакторе кода — кнопка Run, чтобы проверить, как работает скрипт.
Произношение: Не "ранн", не "рун" — короткое ран, как "вран".
Как запомнить: Run — это "бег". Программа "начинает бегать", когда её запускают.


Code [коуд]

Что значит: код — инструкции для компьютера, написанные на языке программирования.
Контекст:

"Этот code слишком сложный, давайте упростим".
"Я пишу code на Python".
Важно: Code — и существительное (покажи мне код), и глагол (кодить задачу). Но профессионалы чаще говорят to write code — последнее звучит слишком разговорно.
Аналогия: Код — как партитура для оркестра. Музыканты (компьютер) ничего не сделают, пока не увидят ноВы (код).


Bug [баг]

Что значит: ошибка в программе, из-за которой она ведёт себя странно или ломается.
Контекст:

"У меня bug: программа зависает при нажатии кнопки".
"Нашли и исправили три бага за день".
История: В 1947 году в одном из первых компьютеров (Harvard Mark II) застряла настоящая моль (bug по-английски). Её приклеили к странице журнала с пометкой "First actual case of bug being found". С тех пор слово прижилось.
Как запомнить: Баг — живая проблема внутри машины. Она где-то прячется — и её нужно найти.


Debug [дибаг]

Что значит: искать и исправлять баги.
Контекст:

"Потратил два часа на debug — оказалось, перепутал + и −".
"Во всех IDE есть встроенные инструменВы для debug".
Производное: От de- ("удалить") + bug → "убрать бага".
Важно: Debugцеленаправленный поиск неисправности. Как детектив, который ищет улики.


Loop [луп]

Что значит: цикл — повторение одних и тех же действий заданное число раз или пока не выполнится условие.
Контекст:

"Сделайте loop, чтобы вывести числа от 1 до 10".
"Бесконечный loop — частая причина зависания".
Аналогия: Лупа — увеличительное стекло. Но loop — это не лупа! Это петля, как на верёвке. Компьютер "ходит по петле", пока не скажут: "хватит".
Как запомнить: Петля на шнурке. Раз — прошёл. Два — снова. Три… и так далее.


Function [фАнкшн]

Что значит: функция — именованный блок кода, который делает одну чёткую задачу и может использоваться много раз.
Контекст:

"Напишите function calculateArea(), чтобы считать площадь".
"Эта function принимает два параметра".
Суть: Функция — как кнопка на микроволновке: "Разогреть". Вы не знаете, как внутри греется, но нажимаете — и получает еду.
Произношение: Ударение на первый слог — ФА-нкшн, не фанк-ШН.


Variable [вЭриэбл]

Что значит: переменная — "коробочка" с именем, в которую можно положить значение (число, текст, да что угодно) и потом его менять.
Контекст:

"Создайте variable userName и присвой ей своё имя".
"Значение variable изменилось после ввода".
Аналогия: Коробка с наклейкой. Наклейка — имя (score, age). Внутри — содержимое (100, 13). Можно вынуть старое и положить новое — имя коробки не меняется.
Важно: Переменная не хранит само значение вечно — только пока программа работает.


String [стринг]

Что значит: строка — последовательность символов (букв, цифр, знаков), заключённая в кавычки.
Контекст:

"Привет, мир!" — это string.
"Преобразуй число в string, чтобы склеить с текстом".
Происхождение: От string of pearls — "нитка жемчуга". Каждый символ — "жемчужина" на нитке.
Как запомнить: Нитка бусин: Привет… — вот и стринг.


Number [нАмбэр]

Что значит: число — значение без кавычек, с которым можно делать математику.
Контекст:

42 — это number, а "42"string.
"Сложите два numbers: a + b".
Разница: Если Вы сложите "10" + "2", получите "102" (склеивание строк). А если 10 + 2 — будет 12 (сложение чисел).
Важно: Компьютер очень строго разделяет типы. Это не "мелочь" — это основа.


Boolean [булИэн]

Что значит: логическое значение — только true (истина) или false (ложь).
Контекст:

"Условие if (x > 5) возвращает boolean".
"Функция isLoggedIn() должны вернуть boolean".
История: Названо в честь Джорджа Буля — математика XIX века, создавшего булеву алгебру (основу логики в компьютерах).
Как запомнить: Как выключатель: либо включено (true), либо выключено (false). Никаких "может быть".


If [иф]

Что значит: условие — "если… то…". Позволяет программе принимать решения.
Контекст:

if temperature > 30:
print("Жарко!")

Как работает: Компьютер проверяет выражение после if. Если оно true — выполняет блок. Если false — пропускает.
Аналогия: Светофор. Если зелёный — иди. Если красный — стой.


Else [элс]

Что значит: "иначе" — продолжение условия if.
Контекст:

if isRaining:
take("зонт")
else:
take("очки")

Важно: elseчасть конструкции if-else. Как вторая половина монеты.


Array [эрей]

Что значит: массив — упорядоченный список значений, пронумерованный с нуля.
Контекст:

colors = ["красный", "зелёный", "синий"]
colors[0]"красный"
Особенность: Нумерация с нуля. Почему? Это исторически — и удобно при расчётах.
Аналогия: Коробка для яиц. Ячейки: 0, 1, 2… В каждой — своё яйцо (значение).


Object [Обджэкт]

Что значит: объект — структура, которая хранит данные (поля) и действия (методы) вместе.
Контекст:

let cat = {
name: "Мурзик",
meow: function() { console.log("Мяу!"); }
};
cat.meow(); // → "Мяу!"

Идея: В реальном мире всё — объекты: машина (модель, цвет, ехать), человек (рост, имя, думать). В программировании — точно так же.
Как запомнить: сущность с внутренним устройством.


Method [мЭтод]

Что значит: функция, которая принадлежит объекту.
Контекст:

array.push(item)push это method массива.
string.toUpperCase()method строки.
Разница от function: Метод всегда вызывается на чём-то: чего-то.метод(). Функция — сама по себе: функция().
Пример: У кошки (cat) есть метод meow(). У собаки — bark(). У каждого объекта — свои методы.


Parameter [парамИтэр]

Что значит: параметр — "входные данные" функции, указанные при её определении.
Контекст:

def greet(name): # ← `name` — параметр
print("Привет, " + name)

Важно: Не путать с аргументом — это то, что передаётся при вызове:

greet("Анна")"Анна" — аргумент.
Аналогия: Рецепт пирога говорит: "Возьмите муку (параметр)". Вы берёте 500 г пшеничной муки (аргумент).


Return [ри:тЁ:н]

Что значит: вернуть результат работы функции.
Контекст:

def double(x):
return x * 2

result = double(5)result = 10.
Суть: Функция — как чёрный ящик. Вы кладёте что-то внутрь (аргументы), жмёте кнопку — и из отверстия вываливается результат (return).
Если нет return? Многие языки вернут undefined или None — "ничего".


Console [кАнсоль]

Что значит: специальное окно (или инструмент), куда программа может выводить служебные сообщения — для отладки и проверки.
Контекст:

console.log("Проверка!") в JavaScript.
В Python — print() (но часто тоже называют "вывод в консоль").
Факт: В старых компьютерах вся работа шла через консоль — без окон, без мышки. Поэтому даже в графических программах осталось это "окно отладки".
Как запомнить: Как приборная панель самолёта — много цифр, ошибок, сигналов. Пилот (программист) смотрит туда, чтобы понять, всё ли в порядке.


Client [клАйэнт]

Что значит: клиент — программа или устройство, которое запрашивает что-то у другой программы.
Контекст:

"Браузер — это client для веб-сайтов".
"Мобильное приложение — client, а сервер обрабатывает запросы".
Суть: Клиент не хранит основные данные и не решает главные задачи — он только просит. Как посетитель в кафе: он не готовит еду, не моет посуду — он только делает заказ (request).
Важно: Клиентом может быть и человек ("пользователь-клиент"), но чаще — программа.


Server [сЁ:вэр]

Что значит: сервер — компьютер или программа, которая отвечает на запросы клиентов.
Контекст:

"Сайт работает на server в облаке".
"Если server упал — сайт недоступен".
Разъяснение: Сервер — это не обязательно "огромный железный шкаф". Это роль. Ваш ноутбук может быть сервером, если на нём запущена программа, которая ждёт запросов (например, локальный веб-сервер для разработки).
Аналогия: Повар в кафе. Клиент (посетитель) заказывает — сервер (повар) готовит и подаёт.


Request [риквЭст]

Что значит: запрос — сообщение от клиента к серверу: "Дай мне вот это".
Контекст:

"Страница отправила request к API".
"Проверь, какой request ушёл — может, ошибка в URL".
Формат: Часто — HTTP-запрос: GET /users, POST /login, и т.д.
Как запомнить: Request = re- ("снова") + quest ("вопрос"). Вы вновь спрашиваете — "А можно?", "А дайте?".


Response [риспОнс]

Что значит: ответ — то, что сервер присылает клиенту после обработки запроса.
Контекст:

response пришли JSON с данными".
"Статус-код response — 200: всё хорошо".
Структура: Обычно содержит:

  • статус (200 = OK, 404 = не найдено, 500 = ошибка сервера),
  • заголовки (например, тип данных),
  • тело (сами данные: текст, JSON, картинка…).
    Аналогия: Официант приносит блюдо — это response на Ваш request.

API [эй-пи-ай]

Что значит: Application Programming Interface — "интерфейс программирования приложений".
Перевод не помогает? Давайте проще: API — это меню для программ.
Контекст:

"Погодное приложение использует API Яндекс.Погоды".
"Напишите свою функцию, но соблюдай API: два параметра, возвращает число".
Как работает: Вы (программа) не лезете в кухню (внутрь сервиса), а просто говорите: "Дайте прогноз на Москву" — и получаете ответ. API — это правила, как можно спрашивать, и что получите.
Важно: API может быть веб-API (через интернет), библиотечный (в коде), операционный (например, вызовы Windows API). Но суть одна: соглашение о том, как общаться.


JSON [джей-сон]

Что значит: JavaScript Object Notation — стандартный формат для передачи структурированных данных между программами.
Контекст:

"Сервер прислал JSON с пользователями".

{ "name": "Тимур", "age": 30, "city": "Москва" }

Почему JSON, а не XML или CSV? Он:

  • легко читается человеком,
  • легко парсится компьютером,
  • встроен в JavaScript "из коробки",
  • поддерживает вложенные структуры (объекВы в объектах).
    Как запомнить: Это просто "объект в кавычках". Всё, что в двойных кавычках ("...") — правильно. Одинарные — ошибка.

Database [дЭйтабэйс]

Что значит: база данных — организованное хранилище информации, к которому можно быстро обращаться.
Контекст:

"Пользователи хранятся в database".
"Добавь новую запись в database через SQL-запрос".
Разъяснение: Это не Excel и не текстовый файл. База данных — это система: программа (например, PostgreSQL, MySQL), которая умеет:

  • хранить миллионы записей,
  • искать за миллисекунды,
  • защищать от потерь,
  • управлять одновременным доступом.
    Аналогия: Библиотека. Книги — данные. Библиотекарь — СУБД (система управления БД). Каталог — индексы.

Query [квЭри]

Что значит: запрос к базе данных — "вопрос", на который она должны дать "ответ".
Контекст:

SELECT name FROM users WHERE age > 18; — это query.
"Оптимизируй query, он тормозит".
Язык: Обычно SQL (Structured Query Language), но бывают и другие (например, MongoDB использует JSON-подобные запросы).
Важно: Query — не то же самое, что request. Запрос к БД — внутренний, между программой и её хранилищем. Request — между клиентом и сервером.


Compile [кэмпАйл]

Что значит: компиляция — процесс перевода кода на языке программирования (например, C#, Java) в машинный код, который понимает процессор.
Контекст:

"Перед запуском нужно compile программу".
"Ошибка на этапе compile — значит, синтаксис нарушен".
Как работает: Компилятор читает весь код, проверяет его на ошибки, и если всё в порядке — создаёт исполняемый файл (.exe, .jar и т.д.).
Аналогия: Перевод книги с русского на китайский целиком, до того как её начнут читать.
Контраст: JavaScript и Python — интерпретируемые: там код читается и выполняется по строчке, без предварительной компиляции (хотя современные движки всё равно делают JIT-компиляцию — но это уже продвинуто).


Build [билд]

Что значит: сборка — процесс подготовки программы к запуску или развёртыванию.
Контекст:

"Запусти build перед коммитом".
"В CI/CD pipeline три этапа: build, test, deploy".
Что входит в build? Зависит от проекта, но обычно:

  • компиляция (если нужно),
  • объединение файлов,
  • минификация (сжатие кода),
  • копирование ресурсов (картинок, шрифтов),
  • генерация конфигураций.
    Разница от compile: Compile — техническая операция (код → машинный код). Buildпроцесс (код → готовый продукт). Можно сказать: build включает compile, но не ограничивается им.

Deploy [диплОй]

Что значит: развёртывание — установка готовой программы на сервер, чтобы ею могли пользоваться.
Контекст:

"Мы сделали deploy новой верси в 3 ночи".
"Automated deploy экономит часы ручной работы".
Этапы:

  1. Сборка (build) →
  2. Тестирование →
  3. Копирование файлов на сервер →
  4. Перезапуск службы →
  5. Проверка доступности.
    Аналогия: Открытие нового кафе:
  • приготовили блюда (build),
  • проверили на дегустации (test),
  • открыли двери (deploy),
  • пустили первых гостей (пользователей).

IDE [ай-ди-и]

Что значит: Integrated Разработка Environment — интегрированная среда разработки.
Контекст:

"Я работаю в IDE — Visual Studio, PyCharm, VS Code".
"Без IDE отладка займёт в 10 раз дольше".
Что входит:

  • редактор кода (с подсветкой, автодополнением),
  • отладчик (debugger),
  • терминал,
  • инструменВы сборки и запуска,
  • навигация по проекту.
    Важно: VS Code — не полноценная IDE "из коробки", но с плагинами становится почти такой же. А IntelliJ IDEA, Eclipse — классические IDE.
    Как запомнить: Это "кухня программиста" — всё под рукой.

Debugger [дИбагэр]

Что значит: отладчик — инструмент в IDE, который позволяет шагать по коду построчно, видеть значения переменных и ловить ошибки в реальном времени.
Контекст:

"Поставьте breakpoint и запусти в debugger".
"Без debugger я бы неделю искал этот баг".
Как работает: Вы говорите: "Остановитесь здесь", программа запускается — и тормозит на указанной строке. Вы смотрите: что в x? что в users? идёте на следующую строку — и так далее.
Эффект: Вместо "почему не работает?" — "вот здесь index = -1, а должно быть 0". Резко.


Breakpoint [брЭйкпоинт]

Что значит: точка останова — метка в коде, на которой отладчик приостановит выполнение.
Контекст:

"Поставьте breakpoint перед циклом — посмотрите, какие данные приходят".
"Можно поставить условный breakpoint: остановитесь, только если x > 100.
Как ставится: Обычно клик слева от номера строки — появляется красная точка.
Происхождение: От break ("остановить") + point ("точка"). Честно и просто.


Exception [иксЭпшн]

Что значит: исключение — сигнал о том, что произошла неожиданная, но предусмотренная ошибка.
Контекст:

"При делени на ноль выбрасывается exception".
"Оберни код в try-catch, чтобы поймать exception".
Чем отличается от ошибки? Ошибка — фатальна (программа падает). Исключение — можно перехватить и обработать:
"Файл не найден? Хорошо, создадим новый".
История: В 1960-х в языке PL/I ввели condition handling — прообраз современных исключений. Сейчас почти все языки используют эту модель.


Try / Catch [трай / кЭч]

Что значит: конструкция для безопасной обработки исключений.
Контекст:

try {
let data = JSON.parse(input);
} catch (error) {
console.log("Неверный формат JSON:", error.message);
}

Как работает:

  • try — "попробуйте сделать это".
  • Если внутри всё хорошо — catch пропускается.
  • Если возникло исключение — выполнение прыгает в catch, и Вы получаете объект ошибки.
    Важно: Не стоит оборачивать всё подряд в try-catch — только то, где реально возможна проблема (чтение файла, сетевой запрос, парсинг).

Library [лАйбрери]

Что значит: библиотека — набор готовых функций и классов, которые можно использовать в своём коде.
Контекст:

"Для работы с датами использую библиотеку date-fns".
"Не изобретай велосипед — возьмите library".
Суть: Библиотека пассивна. Она ничего не делает сама — Вы вызываете её функции, когда нужно.
Аналогия: Набор отвёрток. Вы берёте нужную — и крутите. Сама отвёртка не лезет в шуруп.


Framework [фрЭймворк]

Что значит: фреймворк — "каркас" приложения. Он управляет ходом выполнения, а Вы вписываете свой код в его структуру.
Контекст:

"Пишу веб-приложение на framework React".
"Spring — framework для Java-бэкенда".
Разница от library:

  • Библиотека: Вы управляете программой → вызываете lib.doSomething().
  • Фреймворк: он управляет программой → Вы пишете onButtonClick(), и фреймворк вызовет её, когда нужно.
    Инверсия управления (IoC): Это ключевая идея. Фреймворк — как режиссёр: он говорит, когда и где Вы (актёр) должны выйти на сцену.

Repository (repo) [рипОзитори / рИпо]

Что значит: репозиторий — хранилище кода с полной историей изменений.
Контекст:

"Клонируй repo с GitHub".
"Создайте pull request в основной repo".
Как устроен: Использует систему контроля версий (чаще всего — Git). Каждое изменение сохраняется как commit (см. ниже), и можно откатиться в любую точку истории.
Факт: Репозиторий — не "папка с кодом". Это папка + скрытая папка .git, где лежит вся история.


Commit [кэмИт]

Что значит: фиксация изменений — сохранение набора правок в истории репозитория.
Контекст:

"Сделайте commit после завершения фичи".
git commit -m "Добавил форму входа"
Важно:

  • commit — не то же самое, что save. Save — локально, в файле. Commit — в истории проекта.
  • Каждый commit имеет уникальный хеш (например, a1b2c3d), дату, автора и сообщение.
    Как запомнить: Commit — как "подпись под документом". Вы говорите: "Да, я подтверждаю, что на этом этапе всё в порядке".

Push [паш]

Что значит: отправка локальных коммитов в удалённый репозиторий (например, на GitHub).
Контекст:

git push origin main — отправить изменения в ветку main.
"Не забудь push, иначе коллеги не увидят Ваши правки".
Направление: Локально → удалённо.
Аналогия: Отправка письма по почте. Commit — написал и подписал. Push — бросил в почтовый ящик.


Pull [пул]

Что значит: получение изменений из удалённого репозитория к себе.
Контекст:

git pull origin main — забрать последние правки.
"Перед началом работы сделайте pull, чтобы не было конфликтов".
Направление: Удалённо → локально.
Pull ≠ Fetch + Merge? Да, технически pull — это fetch (скачать изменения) + merge (слить с текущей веткой). Но для начала хватит и такого понимания.


Branch [брэнч]

Что значит: ветка — независимая линия разработки внутри одного репозитория.
Контекст:

"Работай в своей branchfeature/login".
"После тестов смержим branch в main".
Зачем? Чтобы не ломать основной код (main), пока пишете новую функцию.
Аналогия: Река разделилась на рукава. Один — основной поток (main). Другой — новый канал (feature), который потом вольётся обратно.


Merge [мЁ:дж]

Что значит: слияние — объединение изменений из одной ветки в другую.
Контекст:

"Сделал merge feature/login в main".
"Был конфликт при merge — пришлось править вручную".
Что такое конфликт? Когда в двух ветках одну и ту же строку изменили по-разному. Git не знает, какую версию оставить — и просит Вас решить.


Conflict [кОнфликт]

Что значит: конфликт версий — ситуация, когда Git не может автоматически объединить изменения.
Контекст:

"При merge возник conflict в файле auth.js".
"Реши conflict: выберите свою версию, его или смешай".
Как выглядит:

<<<<<<< HEAD
console.log("Мой код");
=======
alert("Его код");
>>>>>>> feature/login

Вы удаляете всё, кроме нужного — и сохраняете.
Важно: КонфликВы — не ошибка. Это нормальный процесс совместной работы. Главное — их замечать и решать.


Cloud [клауд]

Что значит: облако — удалённые серверы и сервисы, доступные через интернет, за которыми нет физического "своего сервера".
Контекст:

"Мы переехали с локального сервера в cloud".
"Используем облачное хранилище: Google Drive, Яндекс.Диск — это тоже cloud".
Разъяснение: Cloudконкретные дата-центры (например, AWS в Ирландии, Google Cloud в Финлянди), которыми управляют провайдеры. Вы арендовалиьщик, а не владелец.
Модели:

  • IaaS (Infrastructure): "арендуй сервер как компьютер" (Amazon EC2),
  • PaaS (Platform): "арендуй платформу — заботься только о коде" (Heroku),
  • SaaS (Software): "арендуй готовую программу" (Gmail, Notion).
    Аналогия: Электричество. Раньше каждый завод имел свою электростанцию (локальный сервер). Теперь — включаете вилку в розетку (подключаетесь к облаку) и получаете мощность по мере надобности.

Container [кэнтЕйнэр]

Что значит: контейнер — лёгкая, изолированная среда для запуска приложения со всеми его зависимостями.
Контекст:

"Упаковали сервис в container — теперь он везде работает одинаково".
"Docker создаёт и управляет containers".
Зачем? Проблема: "У меня на машине работает, а у Вас — нет". Причина — разные верси библиотек, ОС, настроек. Контейнер берёт всё нужное и кладёт в "коробку", которую можно переносить.
От виртуальной машины отличается:

  • ВМ — эмулирует весь компьютер (тяжело, медленно),
  • Контейнер — изолирует процесс (легко, быстро).
    Как запомнить: Контейнер — как пластиковый контейнер для еды: блюдо (программа), соус (библиотеки), приборы (настройки) — всё вместе, герметично.

Docker [дОкэр]

Что значит: Docker — самая популярная система для создания и управления контейнерами.
Контекст:

docker run nginx — запустить веб-сервер в контейнере.
"Все микросервисы упакованы в Docker-образы".
Что такое образ (image)? Это "шаблон", из которого создаются контейнеры — как снимок системы в момент времени. Образ — неизменяем, контейнер — его запущенная копия.
История: Назван в честь docker — человека, грузящего контейнеры на корабль. Программа "грузит" приложения в цифровые контейнеры.


Kubernetes [кьюбЭ:нэтИс], сокращённо K8s

Что значит: оркестратор контейнеров — система, которая управляет сотнями контейнеров: запускает, распределяет нагрузку, перезапускает упавшие.
Контекст:

"Без Kubernetes масштабировать 50 сервисов невозможно".
"K8s — стандарт де-факто для production-инфраструктуры".
Почему "оркестратор"? Потому что управляет множеством "музыкантов" (контейнеров), чтобы звучало слаженно — а не как оркестр в хаосе.
Происхождение названия: От греч. kubernetes — "кормчий", "рулевой".
K8s? Сокращение: K + 8 букв + s = K8s. Как i18n (internationalization), a11y (accessibility).


CI/CD [си-ай / си-ди]

Что значит:

  • CI — Continuous Integration (непрерывная интеграция): автоматическая сборка и тестирование при каждом изменении кода.
  • CD — Continuous Delivery/Deployment (непрерывная доставка/развёртывание): автоматическая подготовка и (иногда) развёртывание в продакшен.
    Контекст:

"У нас настроен CI/CD pipeline в GitLab".
"Если тесВы в CI упали — коммит не примут".
Как работает:

  1. Вы делаете git push,
  2. CI-система (GitHub Actions, Jenkins) автоматически:
    • клонирует репозиторий,
    • запускает build,
    • прогоняет тесты,
    • генерирует отчёт.
  3. Если всё OK — CD может даже отправить обновление на сервер.
    Эффект: Никаких "но у меня-то работает!", никаких ручных сборок в 3 ночи.

Pipeline [пАйплайн]

Что значит: конвейер — последовательность автоматизированных шагов (stages), через которые проходит код от коммита до развёртывания.
Контекст:

pipeline три этапа: build → test → deploy".
"Pipeline упал на этапе тестов — смотрите логи".
Аналогия: Конвейер на заводе:

  • станок 1: вырезает деталь (build),
  • станок 2: проверяет размер (test),
  • станок 3: упаковывает (deploy).
    Остановка на любом этапе — всё встаёт.

Cache [кэш]

Что значит: кэш — временное хранилище часто используемых или дорого вычисляемых данных для ускорения работы.
Контекст:

"Результат запроса сохранён в cache на 5 минут".
"Очисти браузерный cache, если сайт отображается старый".
Где бывает:

  • в процессоре (L1/L2/L3 cache),
  • в браузере (картинки, JS-файлы),
  • на сервере (Redis, Memcached).
    Принцип: Лучше 1 раз прочитать с диска и 10 раз отдать из памяти, чем 10 раз читать с диска.
    Риск: Устаревшие данные. Поэтому кэш всегда имеет срок жизни (TTL — Time To Live).

Что значит: небольшой фрагмент данных, который сервер просит браузер сохранить и отправлять при каждом последующем запросе.
Контекст:

"После входа сервер ставит cookie session_id=abc123".
"Без cookies нельзя сделать авторизацию в вебе".
Как работает:

  1. Сервер отвечает: Set-Cookie: session_id=abc123,
  2. Браузер сохраняет это,
  3. При следующем запросе добавляет: Cookie: session_id=abc123.
    Важно:
  • Cookies хранятся на клиенте (в браузере),
  • Они привязаны к домену (google.com не видит yandex.ru),
  • Могут быть сессионными (до закрытия браузера) или персистентными (с датой истечения).
    Не путать с куки-файлами в печенье! Хотя идея похожа: "оставить метку для следующего посещения".

Session [сЭшн]

Что значит: сессия — промежуток времени, в течение которого система "помнит" пользователя.
Контекст:

"Session хранится на сервере, а в cookie — только ID".
"Токен истёк — нужно начать новую session".
Как работает (классика):

  • Пользователь входит → сервер создаёт запись: { id: "abc123", user: "timur", expires: "2025-11-10T12:00:00" },
  • ID (abc123) отправляется в cookie,
  • При каждом запросе сервер ищет сессию по ID.
    Современный вариант: вместо сессий — JWT-токены (см. ниже).

Token [тОкэн]

Что значит: токен — цифровой "пропуск", подтверждающий право на действие.
Контекст:

"После входа приложение получает token и шлёт его в заголовке Authorization: Bearer xyz".
"Access token живёт 1 час, refresh token — 30 дней".
Типы:

  • Access token — для доступа к API сейчас,
  • Refresh token — для получения нового access token без повторного входа.
    Формат: Часто — JWT (JSON Web Token): xxxxx.yyyyy.zzzzz — три части, закодированные в base64, вторая содержит данные (кто, когда, права), третья — подпись (чтобы никто не подменил).
    Преимущество перед сессиями: серверу не нужно хранить состояние — токен самодостаточен.

SSL / TLS [эс-эс-эль / ти-эль-эс]

Что значит: протоколы шифрования данных при передаче по сети.
Контекст:

"Сайт должны работать по HTTPS — это HTTP + TLS".
"Сертификат SSL/TLS выдаёт удостоверяющий центр".
Разница:

  • SSL (Secure Sockets Layer) — старый, уязвимый, не используется с 2015 г.,
  • TLS (Transport Layer Security) — его преемник. Но по привычке всё ещё говорят "SSL-сертификат".
    Как работает:
  1. Браузер и сервер договариваются о ключах,
  2. Все данные шифруются на лету,
  3. Даже провайдер не видит, что передаётся (только домен и объём).
    Визуальный признак: 🔒 в адресной строке и https://.

Firewall [фАйрвол]

Что значит: брандмауэр — система, контролирующая входящий и исходящий сетевой трафик по правилам.
Контекст:

"Разреши порт 443 в firewall, иначе HTTPS не заработает".
"Windows Defender Firewall блокирует неизвестные подключения".
Принцип: Как охранник у двери:

  • Правило: "Пускать только на порт 80 (HTTP) и 443 (HTTPS)",
  • Запрос на порт 22 (SSH)? — "Стой! У вас нет пропуска".
    Уровни:
  • На компьютере (межсетевой экран ОС),
  • На маршрутизаторе,
  • В облаке (AWS Security Groups).

CLI [си-эль-ай]

Что значит: Command-Line Interface — интерфейс командной строки.
Контекст:

"Запусти npm install в CLI".
"Git работает в основном через CLI, хотя есть GUI-оболочки".
Плюсы CLI:

  • Точность (нет "а где эта кнопка?"),
  • Автоматизация (скрипты),
  • Универсальность (работает и на сервере без экрана).
    Минус: Нужно знать команды. Но их можно сохранять, копировать, искать.

GUI [ги-ю-ай]

Что значит: Graphical User Interface — графический интерфейс: окна, кнопки, меню.
Контекст:

"Быстрая настройка — через GUI, сложная — через CLI".
"Утилита gitk — GUI для просмотра истории Git".
Сравнение:

  • CLI — как управление самолётом штурвалом и приборами (точно, но сложно),
  • GUI — как автопилот с сенсорным экраном (удобно, но не для всех манёвров).
    Профессионалы используют оба — в зависимости от задачи.

UI / UX [ю-ай / ю-экс]

Что значит:

  • UI (User Interface) — как выглядит интерфейс: кнопки, цвета, шрифты, расположение.
  • UX (User Experience) — как ощущается использование: удобно ли, интуитивно ли, вызывает ли раздражение.
    Контекст:

"UI дизайнер нарисовал макет, UX-исследователь проверил его на пользователях".
"Отличный UX — когда пользователь не думает, как сделать, а просто делает".
Разница:

  • Красивая кнопка — UI,
  • То, что она на нужном месте, кликается с первого раза, и после клика сразу понятно, что произошло — UX.
    Факт: Хороший UX экономит время, снижает ошибки и повышает лояльность. Плохой — убивает продукт, даже если "всё работает".

См. также

Другие статьи этого же раздела в боковом меню (как на странице "О разделе").