Глоссарий
Словарь веб-разработчика
Визначення технічних термінів з PHP, DevOps, MySQL та AI — з прикладами коду та поясненнями простою мовою.
228
терминов
46
букв
A
Adapter Pattern
Adapter — паттерн-обёртка, преобразующий интерфейс одного класса в интерфейс, ожидаемый клиентом. Позволяет двум несовместимым интерфейсам взаимодействовать без изменения их кода.
Пример
// Сторонняя библиотека логирования со своим интерфейсом
class ThirdPartyLogger {
public function writeLog(string $level, string $msg): void {}
}
// Наш интерфейс
interface Logger {
public function log(string $msg): void;
}
// Adapter — мост между ними
class LoggerAdapter implements Logger {
public function __construct(private ThirdPartyLogger $lib) {}
public function log(string $msg): void {
$this->lib->writeLog('info', $msg);
}
}
Классическое применение
Интеграция сторонних библиотек под собственный интерфейс
Переход на новую версию API без изменения клиентского кода
Тестирование: MockAdapter вместо реального сервиса
Agile / Scrum / Kanban
Agile — набор принципов гибкой разработки: итеративность, коллаборация, реакция на изменения. Scrum и Kanban — конкретные фреймворки реализации Agile.ScrumSprint — фиксированная итерация (1–4 недели) с понятной цельюProduct Backlog — упорядоченный список задачDaily Standup — 15-минутная синхронизация: что сделал, что делаю, что блокируетSprint Review — демонстрация результата заказчикуRetrospective — обсуждение процесса: что улучшитьKanbanНет фиксированных спринтов — непрерывный поток. Доска с колонками (To Do → In Progress → Done). WIP-лимиты — максимум N задач одновременно «в работе». Более гибкий, чем Scrum.Agile ≠ отсутствие планаAgile — об адаптации к изменениям, а не о хаосе. Планирование есть, но горизонт короче и план легче изменить.
API
API (Application Programming Interface) — контракт между двумя программами: одна объявляет, какие запросы принимает и что возвращает, другая — соблюдает эти правила. Это позволяет сервисам взаимодействовать независимо от языка, платформы и внутренней реализации.Как это работаетКлиент отправляет запрос (обычно HTTP) с указанием ресурса и метода. Сервер обрабатывает его и возвращает ответ — чаще всего JSON или XML. Детали внутренней реализации остаются скрытыми за «контрактом».Типы APIREST — наиболее распространённый, использует HTTP-методы (GET, POST, PUT, DELETE)GraphQL — клиент сам указывает, какие поля нужныgRPC — бинарный протокол для микросервисов, очень быстрыйWebSocket — двустороннее соединение в реальном времени
API Gateway
API Gateway — единая точка входа для всех клиентов в микросервисной архитектуре. Клиент обращается к шлюзу, а тот маршрутизирует запросы к нужным сервисам, агрегирует ответы и выполняет кросс-сервисные задачи.Что делает шлюзМаршрутизация — /users/* → User Service, /orders/* → Order ServiceАутентификация — проверка токена один раз вместо в каждом сервисеRate limiting — централизованно для всех сервисовАгрегация — один запрос клиента → несколько запросов к микросервисам → один ответSSL termination, логирование, кешированиеПопулярные решенияKong, AWS API Gateway, Nginx, Traefik, Envoy. Часто сочетаются с service mesh для внутреннего трафика.
API-first подход
API-first — методология разработки, при которой API проектируется и документируется до написания какого-либо кода. Контракт API (OpenAPI/Swagger) становится единственным источником правды для всех команд.
Традиционный vs API-first
Традиционный: кодируем backend → документируем что получилось → frontend приспосабливается
API-first: проектируем API → все соглашаются → backend и frontend разрабатываются параллельно
Преимущества
Frontend может начать работу сразу — mock-сервер генерируется из OpenAPI-схемы
Проблемы дизайна выявляются до написания кода
Автоматическая генерация SDK, документации, тестов из контракта
Проще поддерживать versioning — контракт версионируется в Git
Инструменты
OpenAPI 3.x → Swagger UI (документация), Prism (mock server), OpenAPI Generator (SDK). Stoplight, Postman — для дизайна API.