Сравнение 6-ти популярных фреймворков по основным критериям (необходимый уровень знаний, сфера применения, документация и т.д.)
Zend Framework 1 | CakePHP | Code Igniter 2 | Kohana 3 | Symfony 2 | Yii 1.1 | |
---|---|---|---|---|---|---|
Описание | Академически грамотный код. Очень гибок. Требует хорошего знания PHP и ООП. Придётся немного доводить под себя прежде, чем использовать. Сухая, но достаточно полная техническая документация. | Много встроенного функционала. Всё довольно тесно интегрировано. Документация не в лучшем состоянии. | Почти микрофреймворк. Очень лёгок для изучения. Отличная документация. Гибок. Легко использовать сторонний код. | Быстр, гибок. Свой подход к модульности. Скудная документация. | Активно использует командную строку, yaml. Мощный ORM, хорошая система view, генераторы кода, dependency injection для всего. Изучить очень непросто, несмотря на хорошую документацию. | Проще в изучении, чем Zend и Symfony. Вобрал лучшее от Rails. Неплохой AR, хорошая система view, генераторы кода. Довольно тесная интеграция. |
Необходимый уровень знаний | PHP5, ООП, шаблоны проектирования. | PHP, ООП, умение разбираться в исходном коде фреймворка. | PHP, Основы ООП | PHP5, ООП | PHP5, ООП, ORM, консоль. | PHP5, ООП. |
Предполагаемые проекты | Средние — большие | Маленькие — средние | Маленькие — большие | Маленькие — большие | Большие | Маленькие — большие |
PHP5.2 | Да | Да | Да | Да | Нет | Да |
Жёсткая структура каталогов | Нет (рекомендации) | Да | Да | Да | Да | Нет (рекомендации) |
Официальная поддержка интернационализации | Да | Да | Да | Да | Да | Да |
Сложность установки и настройки | Высокая | Низкая | Низкая | Низкая | Высокая | Средняя |
Требует настройки | Много | Немного | Немного | Немного | Много | Немного |
Полная поддержка ORM | Нет | Да (не очень удобна) | Нет (можно использовать Doctrine) | Да | Да (Propel, Doctrine) | Active Record |
Документация и примеры | Хорошая | Имеется | Отличная | Скудная, местами отстаёт от кода | В процессе написания | Отличная |
Unit-тесты для исходного кода фреймворка | Да | Да | Нет | Да | Да | |
Англоязычное сообщество | Да | Да | Форум, Wiki, туториалы, блоги | Форум, блоги | Да | Да |
Русскоязычное сообщество | Да | Почти не активно | Документация, форум, блоги | Нет | Нет | Документация, форум, блоги |
Лицензия | New BSD | MIT | Своя | BSD-style | MIT | New BSD |
Данная таблица основана на личном опыте автора и, возможно, субъективна. Если у вас есть уточнения или что-либо кажется вам совсем не верным, напишите об этом в комментариях.
Об авторе
Александр Макаров - опытный Java/PHP/веб-разработчик из Воронежа с опытом PM. Активный участник Open Source проектов и один из разработчиков PHP-фреймворка Yii. Работает с CleverTech и занимается созданием крутых штук на Yii.
Проведите конкурс среди участников CMS Magazine
Узнайте цены и сроки уже завтра. Это бесплатно и займет ≈5 минут.