PHP 3548 ~ 2 мин.

Будущее развитие фреймворка Phalcon

Будущее развитие фреймворка Phalcon

Последние события круто изменили вектор направления развития фреймворка Phalcon и я сейчас постараюсь описать самые значимые новости по данному вопросу.

Изменения в команде

Последний стрим от команды Phalcon, конечно, взбудоражил все сообщество фреймворка. 

Главное изменение в команде - уход Сергея Яковлева в отставку из-за нехватки времени, что повлекло за собой возникновение проблем с поддержкой языка Zephir, который был специально разработан для создания последних версий фреймворка Phalcon, чтобы сообщество могло более активно вносить предложения по функционалу Phalcon, т.к. Зефир по своему синтаксису гораздо более простой язык чем C, и был близок к PHP/JS. К сожалению, язык не стал популярным, и поэтому мало кто хотел вносить свой вклад в развитие языка. Язык стал стагнировать, и его было трудно поддерживать. Было обнаружено множество ошибок, и их было очень трудно исправить, чтобы не перерабатывать весь язык.

После ухода Сергея в команде Phalcon больше нет активных мейнтейнеров, чтобы взять на себя руководство и помогать с разработкой, исправлением ошибок и т.д. Было принято решением приостановить активную разработку Zephir, и в будущем теперь скорее всего, он не будет совместим с PHP 8. Но все же желающие всегда могут помочь с Zephir.

Phalcon

Теперь же, без Zephir, команда не сможет должным образом поддерживать и улучшать фреймворк. Дальнейшие варианты предполагали:

  • Либо отказать и прекратить разработку Phalcon
  • Решиться на смелый шаг, кардинально поменяв концепцию, и начать писать фреймворк на нативном PHP.

Команда выбрала второй вариант, и писать Phalcon 5 на PHP, при этом постараются максимально поддерживать Phalcon 4 и выпустить следующую версию 4.1. А так же исправлять некоторые критические проблемы Zephir, которые мешают работе текущей версии Phalcon.

Phalcon 5  

Конечно немного неожидан такой быстрый переход от Phalcon 4 к Phalcon 5, но текущие событие диктуют свои условия для безболезненного перехода на следующую мажорную версию фреймворка. Что известно на текущий день:

  • Будет реализован на чистом PHP
  • Установка через composer
  • Обратная совместимость, насколько это возможно (это будет зависеть от того, насколько легко получится перевести текущие парсеры C для Volt, PHQL и аннотаций)
  • Поддержка PHP 7.4 и будущая PHP 8
  • Цели и философия Phalcon остаются неизменными (производительность, низкие накладные расходы, простота использования)
  • Cardo (сторонний проект от niden можно использовать как отправную точку)
  • Паттерн ADR (Action Domain Responder), как запланировано в версии 4
  • Стремление к 100% покрытию кода и тестам
  • Возможно асинхронная работа (в будущем)

В ближайшее время запланированы исправление ошибок Phalcon 4, а так же создание требований к дизайну Phalcon 5, презентация, настройка репозитория, тесты производительности и выпуск альфа версии фреймворка.

Возможно это не совсем то, что мы хотели бы видеть, но нужно быть реалистами. Нельзя просто так покинуть сообщество, и действительно, нужно верить, что Phalcon - отличный проект, который приносит пользу сообществу PHP.

Уже точно известно, что мы потеряем часть производительности, к которой мы привыкли при использовании Phalcon, конечно PHP 7 смог достаточно ощутимо преодолеть разрыв в производительности, который мы видели при использовании PHP 5.x и Phalcon. Правда остается надежда, что JIT в PHP 8 сможет минимизировать эту потерю, но, что-то точно можно сказать только после тестов. 

Теперь же главной задачей  команды Phalcon остается сохранение структуры, а переход на чистый PHP, может быть плюсом к тому, что сообщество теперь может более активно участвовать в проекте, а также помогать с надстройками, инкубатором и многим другим. Что ж, ждем с нетерпением новую версию Phalcon 5.


Что думаешь?

Категории
  • PHP 68
  • Заметки 18
  • Безопасность 4
  • Флуд 2
  • Nginx 2
  • ИТ новости 2
  • Видео 1
  • Docker 1
  • Roadmap 1
  • Архитектура 0

Хочешь поддержать сайт?

Делаем из мухи слона

sergeymukhin.com

персональный блог о веб-разработке от Сергея Мухина. Блог был основан в 2018 году, и собирался уделять основное внимание последним тенденциям, учебным пособиям, а также советам и рекомендациям, позволяющим начинающим девелоперам встать быстрее на правильную дорогу веб разработки, но что-то пошло не так 😃

Релизы PHP 8.4

Дата Релиз
4 Июля 2024 Альфа 1
18 Июля 2024 Альфа 2
1 Августа 2024 Альфа 3
13 Августа 2024 Feature freeze
15 Августа 2024 Бета 1
29 Августа 2024 Бета 2
12 Сентября 2024 Бета 3
26 Сентября 2024 RC 1
10 Октября 2024 RC 2
24 Октября 2024 RC 3
7 Ноября 2024 RC 4
21 Ноября 2024 GA

Что нового?