Общее
Yii – это объектно-ориентированный фреймворк, написанный на PHP.
Если вы не знаете, что такое фреймворк и чем он отличается от библиотеки, то я рекомендую прочитать это в другой моей статье «Обзор Vue.js». Здесь подробно останавливаться на этом я уже не буду, лишь напомню, что фреймворк – это своеобразный каркас для разработки приложения. Он помогает упростить и сделать более быстрой разработку проекта.
Так как PHP один из самых популярных языков программирования на сегодняшний день, то и фреймворков, написанных на нем, немало: Laravel, CakePHP, Symfony, CodeIgniter и многие другие. Yii можно смело назвать одним из лидирующих по популярности фреймворком.
В 2018 года Yii празднует юбилей – ему исполнилось 10 лет, так как первый релиз состоялся в 2008 году. Актуальная на момент написания статьи версия – 2.0.15.1 от 20 марта 2018.
Фреймворк реализует парадигму MVC и подходит для разработки приложений любой сложности, в особенности если речь идет о крупном проекте: форуме, интернет-магазине, портале и так далее.
Сильные стороны Yii
Преимущества Yii – это высокая скорость работы и хорошая поддержка OОП. Yii включает в себя большое количество библиотек. Благодаря им можно легко создать веб-приложение, которое будет отвечать всем современным стандартам. Встроенные методы позволяют значительно сокращать количество кода.
Важно, что Yii не только распространяется бесплатно, но и выходит под лицензией BSD. То есть его можно использовать в коммерческих целях, встраивать в проприетарные продукты.
Yii имеет хорошую документацию. Она долгое время была англоязычной, но силами русскоязычных пользователей перевод все-таки увидел свет и теперь доступен на сайте проекта.
Фреймворк Yii известен своим огромным сообществом, в том числе на русском языке. Большие сообщества разработчиков – это возможность оперативно получить помощь и обсудить важные темы. Более того – на форуме можно пообщаться и с самим создателем Yii Qiang Xue (писать ему стоит на английском или китайском).
Тем не менее Yii нельзя назвать проектом одного человека, так как сейчас фреймворк поддерживает и развивает большая команда. Она следит за основными IT-тенденциями и внедряет их в проект.
Yii имеет хороший генератор кода. Он сгенерирует исходный код, то есть структуру приложения, в зависимости от параметров, которые вы укажете.
Что еще стоит знать об этом фреймворке? Yii имеет гибкий механизм кэширования и поддерживает несколько хранилищ для кэширования переменных, участков кода и так далее.
Если вы не найдете в Yii нужные вам классы, то их можно будет подключить как расширения из других фреймворков.
Тем, кто раздумывает, стоит ли обратить свое внимание на Yii, – фреймворк имеет достаточно низкий порог вхождения, однако, как и любой другой инструмент, он требует некоторого времени для изучения, чтобы потом можно было использовать его максимально эффективно и удобно.
Философия, которой придерживаются разработчики фреймворка, – это простота и элегантность кода. Yii хорошо расширяется, в нем легко работать с кодом: вы сможете заменить или отредактировать практически любую часть основного кода, а также сможете поделиться (либо воспользоваться) кодом, который предоставляет сообщество.
Еще один момент, о котором нужно сказать – Yii способствует быстрому прототипированию проекта. Это удобно на ранних стадиях разработки, но не стоит забывать, что главная цель прототипа – демонстрация работающей модели системы. Прототип – это не конечный продукт.
Производительность – то, что в первую очередь волнует разработчиков. По словам разработчиков, производительность – это одна из основных целей Yii. Поэтому по результатам тестов phpmark он имеет лучшую производительность.
Yii – фреймворк с большими, проверенными временем возможностями: ActiveRecord для баз данных, поддержка REST API и другие.
Разработчики Yii уделяют много внимания безопасности фреймворка, поэтому в Yii предусмотрены меры против SQL-инъекций, межсайтового скриптинга (XSS), фальсификации файлов cookie и других атак на веб-приложения.
Версии
Существует две основных версии фреймворка – это 1.1 и 2.0. Вторая версия – это переписанный фреймворк с учетом последних технологий и протоколов (Composer, PSR, пространств имен и так далее).
С чего начать изучение
Традиционно изучение любого фреймворка – как и вообще любой новой технологии – стоит начать с изучения официальной документации, которую обычно можно найти на официальном сайте.
Документацию Yii смотрите здесь, благо она уже переведена на русский язык.
Заключение
Yii – это стабильный и безопасный фреймворк, который позволяет разрабатывать различные веб-приложения на PHP. Yii отличается низким порогом входа и производительностью, имеет большое сообщество и постоянно развивается и дорабатывается.