Использование 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