Просвятите в ситуации с фреймворками, пожалуйста.
Читаю последнее время, что модно Zend Framework, модно Cake PHP, вот ez. Сам до этого знал только набор компонент PEAR.
На сколько сейчас компоненты PEAR актуальны?
Из платных лучший Zend, из бесплатных конкурируют Cace PHP и CodeIgniter. Мне больше нравиться CodeIgniter, он хорошо документирован. Но Google продвигает Cace PHP, поэтому подозреваю что именно последний в скором будущем займёт лидирующие позиции на рынке фреймворков.
Относительно eZ ничего не слышал, у кого есть опыт делитесь, как он?
Когда это Zend Framework стал платным??? Вот цитата с офсайта:
"Based on the simple and safe new BSD license, with Zend Framework's License, you rest assured that your code is compliant, unimpeachable, and protected as you see fit. We also require all contributors to the open source Zend Framework to complete and sign a Contributor License Agreement (CLA) — which is based on the standard open-source Apache license — protecting your own intellectual property (that is, your added-value) built on Zend Framework."
Так что вполне себе open-source (свободное распространение и использование с указанием имени компании-производителя).
Лично мне больше всего нравится Zend. Вот его преимущества для меня:
- масштабируемость (компоненты слабо завязаны друг на друга, потому легко навешиваются и отключаются)
- скорость (не самый быстрый фреймворк, но уж точно обладает одним из лучших соотношений скорость/навороченность)
- поддержка от авторов движка PHP (тоже немаловажно)
Набор компонентов настолько же актуален, как и фреймворки. Фреймворк - это законченная система, обвешанная доп. компонентами. Таким образом фреймворк с одной стороны делает за Вас львиную долю рутинной работы (создание каркаса приложения), но обратной его стороной является фактическое навязывание программисты своих принципов (MVC, к примеру).
Возвращаясь к уже заезженным строительным аналогиям:
PEAR - кирпичи, окна, двери, черепица.
Фреймворк - складной дом, который уже сделали для Вас на заводе, Вам остается только доставить его на место, установить, покрасить, ну может сделать небольшой косметический ремонт.
Выбор между фреймворком и самостоятельным программированием платформы с использованием компонент (или даже без оных) сводится к оценке соотношения даваемых преимуществ и накладываемых ограничений.
Но PEAR можно успешно использовать для PHP, как используют Gems для Ruby. Примеры каналов для PEAR:
components.ez.no (ezComponents)
pear.phpmafia.net (Zend Framework)
pear.phpunit.de (PHPUnit)
pear.horde.org (Horde, например есть очень полезные Horde_Yaml)
pear.phing.info (Phing)
pear.phpdb.org (Creole, Jargon, Propel и другие)
после того как пробовал symfony (http://www.symfony-project.org/) больше исследовать не стал - просто, понятно, функционально, радует что многие вещи (проверка прав, валидация форм, настройки, интернационализаия итп) сделаны через конфигурацию в обще много чего интересного
есть блог на хабре http://habrahabr.ru/blog/symfony/
А мне кажется, что зря перестали исследовать :) Нельзя попробовать одно и остановиться на этом, нужно изучать новое, искать лучшие варианты. Я вот тоже, использую пока только Zend Framework, и хоть он мне очень нравится - обязательно изучу другие фреймворки, чтобы на основе личного опыта выбрать лучший инструмент.
я не перестал "смотреть по сторонам" - "умирает не тот кто устал, а кто остановился"
я решаю в основном прикладные задачи, тут мало творчества и мне важен рабочий инструмент
свой инструмент (на текущий момент времени) я нашел
Однако, что-то не видно в текущей документации упоминаний об установке отдельных компонентов через pear. Может быть, теперь такой возможности нет, нужно проверить...
кстати, далеко не везде реализован поиск. Из всех компонент полноценный поиск на рынке есть ТОЛЬКО у ZF (порт Lucene), остальные только интерфейсы к удаленным сервисам или же интерфейс работы с индексными файлами, но полный поисковик есть только в ZF (и индексатор и поисковик)
Вышел релиз eZ Components 2008.1