Выбор фрэймворка (вопрос опытным программистам на пхп и не только)

alexfrominterne

Новичок
Выбор фрэймворка (вопрос опытным программистам на пхп и не только)

Здравствуйте уважаемые программисты.

Не писал на php ничего серьёзного уже несколько лет, а тут появилась потребность поднять сайт с пользователями, своей хитрой статистикой и прочими особенностями, из-за которых опал вариант с интеграцией cms-ов.

Естественно первое что пришло в голову - это воспользоваться каким-нибудь фрэймворком, только вот каким - не знаю.

Обязательных требований к нему не много:
- ООП
- наличие обёрток для работы с файлами и базой данных (желательно с базовыми абстрактными классами)
- наличие механизмов загрузки (подключения) классов + расширяемость
- наличие шаблонизатора (или вообще какого-нибудь механизма позволяющего не мешать ui с бизнес-логикой)

Цель использования - избавиться от рутинного кодирования доступа к файлам и базе данных и парсинга шаблонов. Желательно иметь всякие классы-помощники для обработки данных POST и GET запросов работы со строками изображениями и чем-нибудь ещё нужным (сразу в голову не приходит ничего :)).

Так же было бы неплохо иметь поддержку нэймспэйсов, но в принципе не критично. Архитектурного решения уровня приложения (типа MVC) не нужно.

Пересматривать кучу библиотек очень уж не хочется. :) Может посоветуете что-нибудь? :)

Спасибо.
 

primecode

Новичок
CodeIgniter очень прост. Его вам и посоветую. Или кохана 3 версии но я с ней не работал, но говорят получше чем CI
 
Год назад пытался возиться с Yii (Ыыы) - потом понял, что юзать его невозможно, т.к. документации на него было нуль...
 
не хочу спорить, но скорость написания "Hello world" - это не показатель задокументированности проекта... вот когда надо будет лезть в глубь, тогда уже оценишь наличие докуменации
 

korchasa

LIMB infected
Автор оригинала: Вася Патриков
не хочу спорить, но скорость написания "Hello world" - это не показатель задокументированности проекта... вот когда надо будет лезть в глубь, тогда уже оценишь наличие докуменации
У Yii вполне нормальные unit-тесты. Писать документацию на глубинные штуки сильно расточительно.
 
мощный аргумент! Изучите фреймворк по юнит-тестам... ))
Zend вообще по-моему весь тестами покрыт, однако на его изучаемость это никак не повлияет... как впрочем и у чего угодно другого
 

silent9

Новичок
почему, у Yii вполне хорошая документация, много примеров, готовых cms, модулей, есть форум с русской веткой
 

newARTix

Новичок
За что мне изначально понравился Zend, так это за отсутствие навязывания "Архитектурного решения уровня приложения (типа MVC)". Изначально он не навязывает ничего, никакой архитектуры, кроме необходимости корректной работы __autoload и наследования классов. Прекрасно расширяется. Свой недоORM не навязывает. Я легко дополнил набор хелперов для формирования SQL теми функциями которые мне нужны. Шаблонизатор нужными хелперами. Уже в рамках свой CMS прикрутил phpTumbs, CSS/JS minify, tinyMce и т.д. и т.п. Зенд в это во все не лезет.

И только недавно в него добавили кодогенераторы и прочие плюшки. Начала расти зависимость классов...

Насчет Yii, я полагал что по архитектуре он ближе к Symfony, и соответственно изучать его постепенно не получится, он сразу навязывает кучу своих заморочек. Нет?

Хотя не понимаю что может быть рутинного в обработке POST или в доступе к файлам. Это тонкие материи с которыми я предпочитаю работать вручную. Если, конечно, речь не идет о валидации и кэшировании, эти инструменты безусловно есть в фреймворке.

CodeIgniter ненавижу. Много пафоса, мало пользы. ИМХО. А классы по работе с изображениями и БД так вообще, верх ограниченности и неадекватности.
 

korchasa

LIMB infected
Вася Патриков
Не стоит передергивать. На этапе поверхностного изучения нет необходимости лезть внутрь. Она возникает в классических 10% случаев, во время боевого использования.
 

alexfrominterne

Новичок
Всем огромнейшее спасибо за ответы!

Окончательный выбор я не сделал, но круг сузился до 4-х. :)

1. Prado - по сути ASP.NET переписанный на PHP, мне как человеку писавшему на ASP.NET event driven идеалогия PRADO плюс его модель разделения бизнес логики и представления показалась очень близкой.

2. Yii - тоже вроде event driven, но я не углублялся пока. Вызывает доверие из-за большого количество положительных отзывов, в том числе и в статье на хабре (http://habrahabr.ru/blogs/php/50341/).

3. Symfony - очень подкупает его нацеленность на быструю разработку, и отсутствие совместимости с PHP 4. :)

4. Zend Framework - потому, что это Zend.

Информацию подчерпнул в том числе тут: http://www.phpframeworks.com/

Ещё раз всем спасибо.
 

Gas

может по одной?
alexfrominterne
Выбрось Prado и поставь на его место Kohana. Вот и получится список современных фреймворков среди которых имеет смысл выбирать.
 

alexfrominterne

Новичок
Gas, а что не так с Прадо?

silent9, очень интересно. :) Видимо они очень похожи?

-~{}~ 01.06.10 15:41:

Gas, очень ругаются все что нету у коханы документации хорошей...
 

Gas

может по одной?
Afaik, это старый заброшенный проект, к тому же с event-driven подходом. Не берусь судить хорошо это или плохо, но в других фрейворках подобного нет, следовательно, спрыгнуть на другой "классический mvc" fw будет сложнее.

Всё ниже имхо:
Kohana/Yii - легковесные, быстрые, относительно простые.
Symfony - более монструозный, но с кучей всяких плюшек.
ZF - тоже не лёгенький и даёт слишком свободы, но самое главное в нём - бренд и количество вакансий, где он является обязательным требованием.

Лично я бы выбрал Zend, не потому что он лучше/проще/быстрее (как раз даже наоборот), а просто перспективнее.

Но, всё выше написанное исключительно моё мнение, составленное по куче отзывов других людей, так что слепой рассуждает о радуге :)
 

Adelf

Administrator
Команда форума
1. Prado - по сути ASP.NET переписанный на PHP, мне как человеку писавшему на ASP.NET event driven идеалогия PRADO плюс его модель разделения бизнес логики и представления показалась очень близкой.
Если имеется ввиду ASP.NET WebForms, то забудь про Prado. И про WebForms, если получится :)

Gas, очень ругаются все что нету у коханы документации хорошей...
Насколько я вижу, там с документацией проблемы изза перехода с 2.х версий на 3.х . Многое в документации старое.. примеров мало. Но Кохана простая. Я спокойно смотрю её код и обычно нахожу то, что мне нужно.
Агитировать за нее не буду, ибо не смотрел те же Yii и Symfony. Но пока пишу на ней.
 

confguru

ExAdmin
Команда форума
Тоже кохану рекомендую :)
Если планируете нагрузки более 100к уников в сутки то вообще must have ;-)
 
Сверху