Глоссарий

Словарь веб-разработчика

Визначення технічних термінів з PHP, DevOps, MySQL та AI — з прикладами коду та поясненнями простою мовою.

228 терминов
46 букв
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.