Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьшения длины пробега и улучшения маневрирования ВС при...
Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...
Топ:
Проблема типологии научных революций: Глобальные научные революции и типы научной рациональности...
Когда производится ограждение поезда, остановившегося на перегоне: Во всех случаях немедленно должно быть ограждено место препятствия для движения поездов на смежном пути двухпутного...
Устройство и оснащение процедурного кабинета: Решающая роль в обеспечении правильного лечения пациентов отводится процедурной медсестре...
Интересное:
Что нужно делать при лейкемии: Прежде всего, необходимо выяснить, не страдаете ли вы каким-либо душевным недугом...
Национальное богатство страны и его составляющие: для оценки элементов национального богатства используются...
Принципы управления денежными потоками: одним из методов контроля за состоянием денежной наличности является...
Дисциплины:
2020-04-01 | 151 |
5.00
из
|
Заказать работу |
|
|
Для того чтобы воспользоваться всеми возможностями фреймворка, необходим немалый багаж знаний в разработке приложений. 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 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!