Глосарій
Словник веб-розробника
Визначення технічних термінів з PHP, DevOps, MySQL та AI — з прикладами коду та поясненнями простою мовою.
228
термінів
47
літер
F
Factory Pattern
Factory — патерн, що інкапсулює логіку створення об'єктів. Замість new ConcreteClass() скрізь у коді — виклик фабрики, яка сама вирішує, який саме клас інстанціювати. Клієнтський код не знає, як створюється об'єкт.ВаріантиSimple Factory — статичний метод, що повертає потрібний об'єкт на основі параметраFactory Method — базовий клас визначає інтерфейс для створення, підкласи перевизначають конкретну реалізаціюAbstract Factory — фабрика фабрик: створює сімейства пов'язаних об'єктівКоли кориснийТип об'єкта залежить від runtime-умов або конфігураціїПотрібно ізолювати складну логіку ініціалізації в одному місціЛегко замінити реалізацію без змін у клієнтському коді
Feature Flag
Feature flag (або feature toggle) — механізм увімкнення/вимкнення функціональності без деплою. Код нової фічі присутній у продакшні, але активується лише для обраних користувачів або за умовою конфігурації.Для чогоПоступове розгортання (rollout) — спочатку 1% користувачів, потім 10%, потім 100%A/B тестування — різні версії UI для різних групTrunk-Based Development — незавершений код у main, але захований за флагомKill switch — швидко вимкнути проблемну фічу без відкату деплоюРеалізаціяПрості флаги — змінні середовища або конфіг. Складні сценарії — спеціалізовані сервіси: LaunchDarkly, Flagsmith, GrowthBook, Unleash. Вони дозволяють таргетинг за user_id, country, plan тощо.Технічний боргFeature flag — тимчасова конструкція. Прибирайте флаги після повного розгортання, інакше кодова база перетвориться на лабіринт умов.
Fibers (PHP 8.1)
Fibers — примітиви конкурентного виконання у PHP 8.1. Fiber — це легкий «потік», яким можна керувати вручну: призупинити (suspend) і відновити (resume). Основа для асинхронного PHP без розширень.
Як це працює
$fiber = new Fiber(function (): void {
$value = Fiber::suspend('first'); // призупинитись, повернути 'first'
echo "Resumed with: $value\n";
});
$result = $fiber->start(); // 'first'
$fiber->resume('hello'); // Resumed with: hello
Fiber vs Generator
Generator — ітератор з yield. Однонаправлена передача даних назовні
Fiber — двонаправлений: можна і отримувати, і передавати значення. Повноцінна корутина
На практиці
Fibers — низькорівневий примітив. Кінцевий розробник зазвичай працює через бібліотеки (ReactPHP, Amp, Swoole), а не напряму. Але вони є основою, на якій ці бібліотеки будують async/await-стиль у PHP.
Flexbox (CSS)
Flexbox (Flexible Box Layout) — CSS-модель розкладки для вирівнювання елементів в один рядок або стовпець. Вирішує класичні задачі верстки: вертикальне центрування, рівномірний розподіл, адаптивні навбари.
Основні властивості контейнера
.container {
display: flex;
flex-direction: row | column; /* вісь */
justify-content: flex-start | center | space-between | space-around;
align-items: stretch | center | flex-start | flex-end;
flex-wrap: nowrap | wrap; /* перенос на новий рядок */
gap: 16px; /* відступи між елементами */
}
Властивості елементів
.item {
flex: 1; /* grow + shrink + basis = рівномірний розподіл */
flex-grow: 2; /* займати вдвічі більше вільного місця */
align-self: center; /* індивідуальне вирівнювання */
order: -1; /* змінити порядок без зміни HTML */
}
Flexbox vs Grid
Flexbox — одновимірний (рядок АБО стовпець). CSS Grid — двовимірний (рядки І стовпці одночасно). Для навбару і карточок — Flexbox. Для складних сторінкових розкладок — Grid.