Случаи использования PHP фреймворка — КиберПедия 

Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьше­ния длины пробега и улучшения маневрирования ВС при...

Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...

Случаи использования PHP фреймворка

2020-04-01 151
Случаи использования PHP фреймворка 0.00 из 5.00 0 оценок
Заказать работу

 

Для того чтобы воспользоваться всеми возможностями фреймворка, необходим немалый багаж знаний в разработке приложений. PHP-фреймворки могут помочь устранить очень частую ошибку при программировании приложений, а именно повторение кода, а также систематизировать процесс разработки. Фреймворки являются мощным инструментом для быстроразвивающегося языка программирования как PHP, которые помогут организовать ваш код.

Каждый человек имеет различные предпочтения и потребности. Для одного разработчика использование PHP-фреймворков может помочь в ускорении процесса программирования, а для другого это может показаться пустой тратой времени. В большинстве случаев это зависит от уровня профессионализма, но, в общем, PHP фреймворки предназначены, чтобы сэкономить время и абстрагироваться от рутинных задач.

В основном, PHP-фреймворки применяются для разработки проектов сложнее чем 2-х-3-х страничный сайт с текстовыми страницами.

Обзор современных фреймворков

 

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

Zend Framework

Zend framework - это PHP-framework, созданный и поддерживаемый компанией Zend, сотрудники которой являются непосредственными авторами языка PHP. Поэтому он следует традициям и духу PHP - базируется на простоте, объектно-ориентированных принципах, дружественной лицензии и тщательно тестируемом коде с применением agile методов.

Основные особенности:

1. Все компоненты полностью ориентированы на PHP 5 и E_STRICT- совместимы;

2. Встроенный генератор кода;

.   Архитектура «используй только то что необходимо» с минимальными зависимостями компонентов;

.   Использует легко расширяемый шаблон проектирования 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.

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;

.   Строгие соглашения по именованию;

.   Низкая скорость развития.

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. Нет сформированного русскоязычного сообщества

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-атакам.

Symfony

Symfony - PHP фреймворк, имеющий большую библиотеку классов, который написан на PHP 5. Архитектура имеет полезные компоненты и отличные инструменты предназначенные для создания сложных веб-приложений.Symfony - свободный каркас <http://ru.wikipedia.org/wiki/Framework>, написанный на PHP5, который использует паттерн Model-View-Controller (MVC). Symfony предлагает быструю разработку и управление веб-приложениями, позволяет легко решать рутинные задачи веб-программиста. Symfony бесплатен и публикуется под лицензией MIT.

Особенности:

1. Поддерживает множество баз данных (MySQL, PostgreSQL, SQLite или любая другая PDO-совместимая СУБД);

2. Встроенные классы для работы с email;

.   Гибкая система шаблонов в представлении;

.   Встроенный кодогенератор;

.   Поддержка французского спонсора Sensio;

.   Очень гибок;

.   Есть Dependency Injection;

.   Высокая производительность.

Недостатки:

1. Сложен в освоении;

2. Подходит только для больших проектов;

.   Отсутствие русской документации;

.   Последняя версия требует PHP 5.3;

.   Нет встроенной ORM;

.   Нет русскоязычного сообщества.

Yii

Yii - это высокоэффективный основанный на компонентной структуре PHP-фреймворк для разработки масштабных веб-приложений. Он позволяет максимально применить концепцию повторного использования кода и может существенно ускорить процесс веб-разработки. Название Yii (произносится как Yee или [ji:]) означает простой (easy), эффективный (efficient) и расширяемый (extensible). Так же автор фреймворка, Qiang Xue говорит что название фреймворка изначально значило Yes It Is.

Особенности:

1. Высокая производительность;

2. Интерфейсы DAO и ActiveRecord для работы с базами данных (PDO);

.   Поддержка интернационализации;

.   Кэширование страниц и отдельных фрагментов;

.   Перехват и обработка ошибок;

.   Ввод и валидация форм;

.   Аутентификация и авторизация;

.   Использование AJAX и интеграция с jQuery;

.   Генерация базового PHP-кода для CRUD-операций (скаффолдинг);

.   Поддержка тем оформления для их лёгкой смены;

.   Возможность подключения сторонних библиотек;

.   Миграции базы данных;

.   Автоматическое тестирование;

.   Поддержка REST.

.   Активное русскоязычное сообщество.

Недостатки:

1. Фреймворк все еще молодой;


Поделиться с друзьями:

Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...

Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначен­ные для поддерживания проводов на необходимой высоте над землей, водой...

Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...

Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.04 с.