Около месяца назад Zend Technologies анонсировала Zend PHP Framework в рамках проекта Zend PHP Collaboration Project с заявленной целью предложить «де-факто стандартную среду разработки и развертывания веб-приложений на PHP». Zend опубликовал не так много информации, что вызвало много дискуссий . Только здесь и там , вовлеченные люди по трубопроводу и доставили более или менее полезные информационные лакомые кусочки. В настоящее время Zend работает над первой версией, разрабатывая инфраструктуру для совместной работы и рекомендации по взаимодействию.
В то время как Zend наслаждается вниманием в мире PHP, системы eZ решительно работали над очень похожим проектом, называемым компонентами eZ . Давайте подробнее рассмотрим, что он может предложить и как он сравнивается с Zend PHP Framework.
дизайн
Оба проекта кажутся независимыми, слабо связанными компонентами для уменьшения зависимости, от которой каждый пользователь может сам выбирать, какие из них использовать. В то время как компоненты eZ не проявляют никаких признаков обозначенного дизайна приложения, компоненты Zcontroller и ZpageController в Zend PHP Framework могут предвещать какую-то инфраструктуру MVC.
Компоненты
Список компонентов eZ можно найти прямо здесь . К сожалению, его трудно сравнить с PHP Framework Zend, поскольку доступен только небольшой список каталогов, который датируется 24 октября. Тем не менее, можно также обнаружить первые сходства: стандартные компоненты структуры, такие как абстракция базы данных, исключения, ведение журнала, создание шаблонов, а также фильтры ввода можно найти в обоих проектах.
Помимо этого, Zend Framework предлагает поиск и компонент URI. Хотя мне все еще интересно, как первый может выглядеть, я уже надеюсь, что последний будет «единственным классом, который будет править ими всеми» в качестве ответа на наши проблемы с URI . eZ, с другой стороны, предлагает более широкий набор инструментов: есть общие компоненты, такие как Cache, Configuration, Template и Translation, а также более конкретные инструменты, такие как Archive, File, Image *, Mail и PhpGenerator.
Пока Zend предлагает реализацию ActiveRecord в качестве абстракции базы данных. eZ предоставляет аналогичный компонент PersistentObject, но также тонкий слой базы данных поверх PDO и DatabaseSchema для работы со схемами базы данных. Лично я хотел бы видеть дополнительную облегченную реализацию ActiveRecord, которая работает без явных определений типов данных.
Для создания шаблонов eZ использует язык шаблонов публикации eZ , который очень похож на Smarty. Пока неизвестно, как Zend собирается реализовать этот компонент. Конечно, было бы неплохо иметь свободный выбор того, какой шаблон использовать.
В настоящий момент я могу подумать о некоторых дополнительных (хотя и менее важных) областях, в которых было бы неплохо иметь компоненты для:
- Authentification
- Веб сервисы
- RPC
- Специализированные структуры данных в SQL (упорядоченные списки, множества, деревья и т. Д.)
Лицензия
eZ недавно перешла от лицензии LGPL в стиле copyleft к более разрешительной лицензии BSD . Это означает, что он может использоваться кем угодно для любых целей. Zend PHP Framework поставляется с «лицензией PHP-типа», которая аналогична лицензии BSD.
развитие
Основа Zend рассчитана на вклад сообщества, в то время как разработчики eZ разрабатывают компоненты eZ . С одной стороны, я могу представить множество людей, желающих внести свой вклад в каркас, как они привыкли с открытым исходным кодом. С другой стороны, мы пока не знаем, насколько легко это будет для обычных пользователей и какие обязательства они должны выполнить для Zend PHP Framework. eZ, однако, полностью контролирует разработку и реализацию своей структуры. Это должно привести к более согласованному дизайну и коду. В конце концов, в их рядах есть талантливые разработчики, и у них достаточно опыта в такой работе.
Выпуск
Первая бета-версия компонентов eZ была выпущена в понедельник, 28 ноября 2005 года. Сторонникам Zend PHP Framework придется проявить терпение: Zend все еще «настраивает инфраструктуру совместной работы и рекомендации по взаимодействию», которая не будет завершена до Январь 2006 года в соответствии с официальными вопросами и ответами .
Вывод
Так как Zend Technologies объявила о своей структуре довольно проворно, им пришлось принять некоторую критику. В отличие от eZ, который воздерживался от напыщенных разговоров и сосредоточился на программировании. Это окупилось, так как теперь они могут украсть шоу Zend, что хорошо для нас: eZ подняла планку для предоставления качественной PHP-платформы и вынудила Zend соответствовать их работе.