Flight vs Fat-Free
Що таке Fat-Free?
Fat-Free (ласкаво відомий як F3) є потужним, але простим у використанні мікрофреймворком PHP, призначеним для допомоги у створенні динамічних і надійних веб-додатків - швидко!
Flight порівнюється з Fat-Free в багатьох аспектах і, мабуть, є найближчим родичем у термінах функціональності та простоти. Fat-Free має багато функцій, яких немає у Flight, але також має і багато функцій, які є у Flight. Fat-Free починає демонструвати свою старість і вже не є так популярним, як раніше.
Оновлення стають менш частими, а спільнота не така активна. Код досить простий, але іноді відсутність дисципліни в синтаксисі може ускладнити читання та розуміння. Він працює з PHP 8.3, але сам код все ще виглядає так, ніби живе у PHP 5.3.
Плюси у порівнянні з Flight
- Fat-Free має кілька більше зірок на GitHub, ніж Flight.
- Fat-Free має деяку пристойну документацію, але в деяких областях їй не вистачає ясності.
- Fat-Free має деякі рідкісні ресурси, такі як уроки на YouTube та онлайн-статті, які можна використовувати для вивчення фреймворку.
- Fat-Free має декілька корисних плагінів, що вбудовані, які іноді можуть бути корисними.
- Fat-Free має вбудований ORM під назвою Mapper, який можна використовувати для взаємодії з вашою базою даних. Flight має active-record.
- Fat-Free має вбудовані Сесії, кешування та локалізацію. Flight вимагає використовувати сторонні бібліотеки, але це охоплено у документації.
- Fat-Free має невелику групу плагінів, створених спільнотою, які можна використовувати для розширення фреймворку. Flight має деякі з них, описані на сторінках документації та прикладів.
- Fat-Free, як і Flight, не має залежностей.
- Fat-Free, як і Flight, спрямований на надання розробнику контролю над своїм додатком та простого досвіду розробника.
- Fat-Free підтримує зворотну сумісність, подібно до Flight (частково тому, що оновлення стають менш частими).
- Fat-Free, як і Flight, призначений для розробників, які вперше потрапляють у світ фреймворків.
- Fat-Free має вбудований шаблонний движок, який є більш потужним, ніж шаблонний движок Flight. Flight рекомендує Latte для досягнення цієї мети.
- Fat-Free має унікальну команду типу CLI "route", де ви можете створювати CLI додатки безпосередньо у Fat-Free і обробляти це, як звичайний запит
GET
. Flight досягає цього за допомогою runway.
Мінуси у порівнянні з Flight
- Fat-Free має певні тести реалізації і навіть має свій власний тест клас, який є дуже базовим. Проте, він не 100% модульно протестований, як Flight.
- Вам доведеться використовувати пошукову систему, таку як Google, щоб фактично знайти сайт документації.
- Flight має темний режим на своєму сайті документації. (падіння мікрофона)
- Fat-Free має кілька модулів, які, на жаль, не підтримуються.
- Flight має простий PdoWrapper, який є трохи простішим, ніж вбудований
DB\SQL
клас Fat-Free. - Flight має плагін для управління правами доступу, який можна використовувати для забезпечення безпеки вашого додатку. Slim вимагає використовувати сторонню бібліотеку.
- Flight має ORM під назвою active-record, який виглядає більше як ORM, ніж Mapper Fat-Free.
Додаткова перевага
active-record
полягає в тому, що ви можете визначати відносини між записами для автоматичних злиттів, тоді як Mapper Fat-Free вимагає від вас створення SQL.views. - Дивіться на це, Fat-Free не має кореневого простору назв. Flight має простір назв у всьому коді, щоб не стикатися з вашим власним кодом.
клас
Cache
є найбільшим порушником у цьому. - Fat-Free не має проміжного програмного забезпечення. Замість цього є хуки
beforeroute
іafterroute
, які можна використовувати для фільтрації запитів і відповідей у контролерах. - Fat-Free не може групувати маршрути.
- Fat-Free має обробник контейнера ін'єкції залежностей, але документація надзвичайно обмежена з приводу того, як його використовувати.
- Налагодження може бути трохи складним, оскільки в основному все зберігається в тому, що називається
HIVE