Почему Yii?
Написание «Hello World» на PHP довольно легко, но создание реального веб-приложения быстро усложняется. Как только вы захотите управлять безопасностью, писать DRY- код или использовать методы проектирования MVC , PHP, похоже, не хватает. В прошлом я работал с Ruby on Rails, но обнаружил, что с этим еще многое сложно, особенно когда речь идет о хостинге и развертывании экономичным и гибким способом.
Это где PHP фреймворки входят.
Существует множество хороших PHP-фреймворков: Symfony , Cake , Zend , CodeIgniter , Laravel и мой любимый Yii . Yii — это бесплатная среда с открытым исходным кодом для PHP5, которая поддерживает чистый, СУХОЙ дизайн и поддерживает быструю разработку. Я обнаружил, что Yii предлагает широту всего, что я ожидаю от фреймворка в высокопроизводительном пакете, с некоторыми ограничениями, которые накладывают другие фреймворки PHP.
Upstart медиа-сайт Vice написан на Yii, как альтернатива WordPress для начинающих разработчиков, CraftCMS (см. @Reifman для моего нового вступления в CraftCMS).
Yii’s выделяется своей производительностью , что очень важно при принятии фреймворка:
Инфраструктура Yii также предлагает широкий спектр возможностей, которые позволяют мне быстро и легко писать оптимизированные веб-приложения. И, что важно, Yii также предлагает отличную документацию и поддержку сообщества.
Yii зрелый, проверенный временем и стабильный. Выпуск 1.x, созданный разработчиком Qiang Xue , существует с 2008 года. Выпуск 2.0 ожидается на мгновение, они только заканчивают работу над документацией и финальным тестированием .
Характеристики
Для высокопроизводительной платформы широкие возможности и набор функций Yii весьма необычны, и это одна из причин, по которой меня привлекла среда. Вы можете увидеть и попробовать некоторые примеры кода Yii в действии на Yii Playground .
Вот некоторые основные моменты :
- Архитектура Модель-Вид-Контроллер. Как и Ruby on Rails, теперь вы можете использовать MVC в своих PHP-приложениях.
- Объекты доступа к базе данных (DAO), Active Record и программные миграции баз данных упрощают задачи создания веб-приложений на основе базы данных.
- Ввод формы, проверка и поддержка Ajax встроены. Yii делает формы довольно легкими.
- Встроенная аутентификация и мощные расширения для управления пользователями облегчают запуск новых веб-приложений.
- Gii, встроенный в Yii инструмент генерации кода, ускоряет процесс разработки вашего приложения в стиле MVC
- Консоль Yii. Вы можете запустить Yii из командной строки или как демон. Благодаря этому можно создавать высокопроизводительные фоновые задачи в PHP.
- Тематические опции, такие как расширение Bootstrap, значительно упрощают создание великолепно реагирующих приложений.
- Поддержка многоуровневого кэширования Yii позволяет легко реализовать те виды кэширования, которые имеют смысл для вашего приложения.
- Безопасность. Yii значительно минимизирует типичные факторы риска запуска сервисов с PHP и MySQL
- Интеграция с другими фреймворками. В Yii легко использовать функции Zend или PEAR
- Расширения. Сообщество Yii предлагает множество бесплатных плагинов и виджетов с открытым исходным кодом.
- Интернационализация. Yii поддерживает I18N и упрощает предоставление локализованных версий вашего приложения.
- Обработка ошибок, регистрация и тестирование — да, Yii поставляет.
Сообщество Yii также приобрело неограниченную лицензию на прекрасный веб-редактор Redactor — так что вы можете использовать его в любом из своих приложений Yii. Это отлично подходит для расширенного форматированного ввода или функций CMS.
Документация и сообщество Yii также являются отличными функциями. Есть несколько отличных электронных книг, которые помогут вам начать работу.
Мой опыт работы с Yii
Yii был ключевой частью моей возросшей производительности за последние два года. Yii облегчил мне создание ряда веб-приложений:
- Упростите фильтры электронной почты, управляйте и отправляйте дайджесты для моей электронной почты, упрощая стычку современного общения и предоставляя новые мощные функции, такие как тихая работа электронной почты. Он интегрируется с библиотекой PHP IMAP, API Mailgun, а также Pushover API для уведомлений.
- Geogram — это концептуальный проект, предлагающий группы электронной почты для районов и мест. Geogram интегрируется с данными о окрестностях Zillow , Google Maps, Google Places и Mailgun.
- Simple Monitor контролирует мои сайты WordPress и состояние моих серверов. Когда что-то идет не так, он отправляет уведомление iOS на мой телефон.
- ListApp , бесплатное приложение электронной почты с открытым исходным кодом, использующее список Mailgun и API проверки электронной почты. Я скоро напишу больше об этом для Tuts + .
Код для Simplify Email и Simple Monitor доступен для покупки, если вы хотите просмотреть более глубокий код Yii. Я также написал несколько уроков по Yii .
Некоторые из моих любимых расширений Yii включают Yii User , Yii Bootstrap , Redactor и Yii Hybridauth .
Что нового в версии 2.0?
Yii 2.0 готовится к выпуску (следуйте плану разработки ). Бета-заметки Yii2 лучше всего суммируют улучшения от Yii 1.x.
Отчасти из-за того, насколько продвинутым был Yii 1.x, в Yii2 нет ни одной удивительной функции, но есть широкий набор существенных улучшений, которые будут значительно облегчать жизнь разработчикам Yii.
Вот несколько основных моментов:
- Поддержка автозагрузки класса PSR-4, упрощение пространств имен, ускорение загрузки и повышение удобства использования для разработчиков.
- Улучшения производительности и безопасности
- Интеграция инфраструктуры RESTful API для облегчения создания API
- Интеграция тестирования Codeception
- Улучшения базы данных и активных записей, включая пакетные запросы, поддержку подзапросов и обратных связей
- Улучшена обработка и обработка URL
- Переводы основных сообщений доступны на 26 языках
- Генератор документации
Начало работы с Yii
Начать работу с Yii довольно легко из-за его выдающейся документации. Вот несколько вещей, чтобы попробовать:
- Возьмите тур Yii
- Смотреть Yii Screencasts
- Перейдите в Библиотеку : Полное руководство по Yii , посмотрите книгу Ларри Уллмана «Разработка книг и веб-приложений Yii с Yii и PHP».
- Исследуйте Yii Playground
- Попробуйте бесплатный учебник ListApp для Mailgun с открытым исходным кодом , купите код для Simple Monitor или ознакомьтесь с другими моими учебниками .
- Обязательно задавайте вопросы на форуме сообщества Yii .
Я чрезвычайно взволнован Yii 2.0 и будущим Yii как PHP-фреймворка. Это повысило мою эффективность как разработчика и консультанта. Надеюсь, вы найдете Yii таким же интересным и полезным, как и я.
Если у вас есть какие-либо вопросы или исправления, пожалуйста, оставьте их в комментариях. Если вы хотите быть в курсе моих будущих уроков Tuts + и других серий, пожалуйста, следуйте @reifman или посетите страницу моего автора .