Глосарій
Словник веб-розробника
Визначення технічних термінів з PHP, DevOps, MySQL та AI — з прикладами коду та поясненнями простою мовою.
228
термінів
47
літер
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-ліміти (Work In Progress) — максимум 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.