Использование PHP фреймворков в разработке сайта
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
°льными зависимостями компонентов;
.Использует легко расширяемый шаблон проектирования MVC, поддерживает макеты и PHP-скрипты представления по-умолчанию;
.Поддерживает множество различных баз данных включая MariaDB, MySQL, Oracle, IBM DB2, Microsoft SQL Server, PostgreSQL, SQLite, and Informix Dynamic Server;
.Специальные классы для создания, отправки, получения email с помощью mbox, Maildir, POP3 и IMAP4;
.Гибкая подсистема кэширования с поддержкой множества хранилищ;
Недостатки:
1.Слишком большой;
2.Через чур многослойный;
.Очень медленный без кеширования;
.Очень сложная архитектура, без глубокого понимания шаблонов проектирования сложен в освоении;
.Слабое русскоязычное сообщество;
.Много мелких недочетов;
.Очень медленная скорость развития;
.Последняя версия требует PHP 5.2;
.Нет ORM.
1.4.2 CakePHP
CakePHP является быстроразвивающимся фреймворком для PHP, который предоставляет расширяемую архитектуру для разработки, обслуживания и развертки веб-приложений. Использует известный шаблон проектирования MVC, как и в объектно-реляционных фреймворках. Основной парадигмой CakePHP является увеличит продуктивность разработки и помогает программисту писать меньше кода. Изначально создавался как клон популярного Ruby on Rails, и многие идеи были заимствованы именно оттуда.
Особенности:
1.совместимость с PHP4 (до версии 1.3 включительно) и PHP5;
2.компоненты для авторизации, ограничения доступа (ACL), управления сессиями, cookies, представления древовидной информации (в виде Nested Sets)
.хелперы (компоненты) для генерации и заполнения форм, деления на страницы (paginate), управления кэшем, JavaScript (в том числе и AJAX)
.механизм интернационализации для работы сайта на множестве языков
.генерация SQL-запросов, в том числе для таблиц с отношениями один ко многим и многие ко многим, ORM
.Скаффолдинг и генерация CRUD-страниц для сущностей, Router::mapResources c Put Delete Get Post.
.Автогенератор кода Bake
.Миграции
.Консольная интеграция, класс Shell и задачи Task
.Плагины (как отдельные расширяемые приложения), компоненты и поведения,
.Поддержка Simple Test
.Слои (layouts) и темы (Themes)
13.Низкий порог вхождения - быстрая разработка, основана на соглашениях (взят курс на Ruby On Rails)
Недостатки:
1.Низкая производительность;
2.Слабая документация;
.Неустойчивость к CSRF-атаке;
.Нет сформированного русскоязычного сообщества;
.Сложный в понимании ACL;
.Строгие соглашения по именованию;
.Низкая скорость развития.
1.4.3 Kohana
Проект Kohana был создан как ветвь PHP-фреймворка CodeIgniter под именем Blue Flame. Главной причиной ответвления был переход к более открытой для общественности модели разработки, потому, что многие пользователи были недовольны скоростью разработки и исправления ошибок в CodeIgniter. Rick Ellis - создатель и владелец CodeIgniter - подтолкнул новый фреймворк к созданию собственной документации и посоветовал переименовать проект. В июле 2007 Blue Flame был переименован в Kohana для того, чтобы избежать проблем с авторскими правами в будущем.
Название Kohana было выбрано, когда разработчики начали просматривать словари коренных американцев для того, чтобы выбрать слово, не нарушающее авторские права. Kohana на языке Сиу значит быстрый. Также в японском языке имеет значение маленький цветок, а на украинском любимая и имя известной косатки (Kohana) - все эти значения не имеют отношения к названию.
Особенности:
1.Высокая безопасность;
2.Хорошо прокомментированный код и встроенные средства отладки и профилирования;
.Прост в понимании;
.Использует парадигму MVC;
.Поддержка UTF-8;
.Очень легко расширяем;
.Есть ORM;
.Распространяется по лицензии BSD, то есть полностью свободен как для коммерческого так и бесплатного использования.
Недостатки:
1.Документация местами устаревшая, редко обновляется;
2.Слабая обратная совместимость между версиями;
.Слаборазвитый форум, большинство разработчиков общается через IRC;
.Нет никаких гарантий, что проект будет развиваться в будущем;
5.Нет сформированного русскоязычного сообщества
1.4.4 Codeigniter
CodeIgniter - популярный MVC фреймворк с открытым исходным кодом, написанный на языке программирования PHP, для разработки полноценных веб-систем и приложений. Разработан компанией EllisLab, а также Риком Эллисом (Rick Ellis) и Полом Бурдиком (Paul Burdick).
Особенности:
1.CodeIgniter отличает простота, которая достигается благодаря следующим факторам:
2.Хорошая документация;
.Развитое сообщество;
.Фреймворк дает свободу программисту, не создавая каких-либо структурных ограничений и конвенций;
.Программисту не требуется учиться пользоваться генераторами кода из командной строки;
.CodeIgniter работает практически на любом хостинговом плане, который имеет поддержку PHP версии 5.1 и выше;
.CodeIgniter считается одним из быстрых и не требовательных к ресурсам фреймворков;
.Поддержка баз данных MySQL, PostgreSQL, MSSQL, SQLite, Oracle.
Недостатки:
1.Поддержка PHP4 тянет за собой лишний код;
2.Нет встроенной ORM;
.Нет встроенной системы разделения прав;
.Медленно развивается;
.Неустойчивость к CSRF-атакам.
1.4.5 Symfony
,PHP5,Model-View-Controller(MVC).Symfony-,%d