Yii

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
Yii
Yii logo.png
Тип

программный каркас для создания веб-приложений

Автор

Qiang Xue

Разработчик

Yii developers team

Написана на

PHP

Операционная система

кроссплатформенное ПО

Первый выпуск

3 декабря 2008

Последняя версия

2.0.12 (6 июня 2017)

Состояние

Активное

Лицензия

BSD

Сайт

yiiframework.com

Yii (акроним от «Yes It Is!», произносится как «Yee» или [ji:], на русском «йии»[1]) — объектно-ориентированный компонентный фреймворк, написанный на PHP и реализующий парадигму MVC[2].

История[править | править вики-текст]

История Yii началась 1 января 2008 года, как проект по исправлению некоторых изъянов во фреймворке PRADO[en] (PHP Rapid Application Development Object-oriented), ставшего в 2004 победителем «Zend PHP 5 coding contest»[3][4].

Фреймворк PRADO был попыткой перенести ASP.NET на платформу PHP, включая ViewState, PostBacks, Page_Load и OnClick, вследствие чего встречались участки кода просто скопированные из ASP.NET. Например, разделение на Rare Fields и Occasional Fields в классе Control[5] с целью оптимизации по памяти, которое имеет смысл в .NET, но представляет сомнительную ценность в PHP. PRADO унаследовал от ASP.NET почти все отрицательные стороны: медленно обрабатывал сложные страницы, имел крутую кривую обучения и был довольно труден в настройке[6].

В определенный момент основатель и разработчик ядра фреймворка PRADO[7] — Qiang Xue понял, что PHP-фреймворк должен быть построен несколько по-другому. В октябре 2008 года, после более 10 месяцев закрытой разработки, вышла первая альфа-версия. 3 декабря 2008 был выпущен Yii 1.0[2]

Возможности[править | править вики-текст]

Расширения[править | править вики-текст]

Проект Yii включает в себя хранилище пользовательских расширений.

Была также официальная библиотека расширения, zii, которая в конечном итоге была объединена с основной структурой; она была включена в каждую версию с версии Yii версии 1.1.0 и включает в себя дополнительные поведения и виджеты, такие как сетки и пользовательский интерфейс jQuery.

Документы и лицензии[править | править вики-текст]

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

Yii выпущен под новой лицензией BSD (лицензия 3-оговорки). Это означает, что можно использовать его бесплатно для разработки как открытых, так и проприетарных веб-приложений. Текст, содержащийся в Официальной документации Yii, лицензируется для общественности в соответствии с лицензией GNU Free Documentation License (GFDL). В общем, содержание документации Yii можно копировать, модифицировать и перераспределять до тех пор, пока новая версия предоставляет одни и те же свободы другим и признает авторов используемой документации документации Yii. Логотип лицензирован в соответствии с лицензией Creative Commons Attribution-No Derivative Works 3.0 Unported License

Сравнение с другими фреймворками[править | править вики-текст]

По результатам тестов phpmark Yii показал лучшую производительность[8].

Справедливости ради необходимо отметить, что производительность фреймворков в этих тестах оценивалась на искусственных примерах типа Hello world. Тесты показывают время инициализации фреймворков, и на основании их можно лишь сделать вывод, что Yii имеет качественную подсистему отложенной инициализации (то есть, код загружается только тогда, когда он необходим). Подтвержденной информации о том, что Yii в «боевых условиях» работает быстрее, чем другие фреймворки, нет.

В блогосфере можно найти массу статей со сравнительным анализом фреймворков. В целом, прослеживаются следующие тенденции:

  • Yii активно развивается[9][10].
  • Yii не выглядит «монстром» по сравнению с фреймворками symfony и Zend Framework (у которых число строк кода соизмеримо с числом строк кода операционных систем)[11].
  • В некоторых сравнительных работах отмечается высокая скорость изучения фреймворка, получения результатов и прототипирования по сравнению с Zend Framework и Symfony. Также отмечается его стабильность и безопасность[12][13].

История версий[править | править вики-текст]

Цвет Обозначение
Красный Старая версия, не поддерживается
Жёлтый Старая версия, пока поддерживается
Зелёный Текущая версия
Голубой Будущая версия
Ветка Версия Дата выпуска Окончание поддержки Системные требования
1.0 1.0 3 декабря 2008 31 декабря 2010 PHP 5.1.0 или выше
1.0.1 4 января 2009
1.0.2 1 февраля 2009
1.0.3 1 марта 2009
1.0.4 5 апреля 2009
1.0.5 10 мая 2009
1.0.6 7 июня 2009
1.0.7 5 июля 2009
1.0.8 9 августа 2009
1.0.9 6 сентября 2009
1.0.10 18 октября 2009
1.0.11 13 декабря 2009
1.0.12 14 марта 2010
1.1 1.1.0 10 января 2010 31 декабря 2015

до 1 декабря 2019

поддержка безопасности кода[14]

PHP 5.1.0 или выше
1.1.1 14 марта 2010
1.1.2 2 мая 2010
1.1.3 4 июля 2010
1.1.4 5 сентября 2010
1.1.5 14 ноября 2010
1.1.6 16 января 2011
1.1.7 26 марта 2011
1.1.8 26 июня 2011
1.1.9 1 января 2012
1.1.10 12 февраля 2012[15]
1.1.11 29 июля 2012[16]
1.1.12 19 августа 2012[17]
1.1.13-RC 2 декабря 2012[18]
1.1.13 30 декабря 2012[19]
1.1.14 11 августа 2013[20]
1.1.15 29 июня 2014[21]
1.1.16 21 декабря 2014[22]
1.1.17 13 января 2016[23]
1.1.18 19 апреля 2017[14]
1.1.19 8 июня 2017[24]
2.0 2.0.0 12 октября 2014 PHP 5.4.0 и выше[25]
2.0.1 7 декабря 2014
2.0.2 11 января 2015
2.0.3 1 марта 2015
2.0.4 10 мая 2015
2.0.5 11 июля 2015
2.0.6 10 августа 2015
2.0.7 14 февраля 2016
2.0.8 28 апреля 2016
2.0.9 11 июля 2016[26]
2.0.10 20 октября 2016[27]
2.0.11 1 февраля 2017[28]
2.0.12 5 июня 2017[29]
2.1 PHP 7.1 и выше

События, встречи[править | править вики-текст]

2012[править | править вики-текст]

  • Первая профессиональная конференция веб разработчиков, использующих в своих приложениях фреймворк Yii. YiiConf-2012, Киев, 19 мая 2012[30]

2016[править | править вики-текст]

  • Yii2 встреча. Dev Pizza с Дмитрием Науменко «Профилирование в PHP с XDebug, XHprof, Blackfire». Киев, 17 мая 2016[31]
  • Хакатон по Yii Framework в TACC, конференции DevConf. Москва, 18 и 19 июня 2016[32][33]
  • Yii2 митап с Михаилом Боднарчуком, Киев 13 июля 2016[34]
  • Лекция Дмитрия Немеша. Киев. 21 июля 2016[35]
  • WebCamp. Одесса, 29-31 июля 2016[36]
  • PHP frameworks day. Киев, 3 сентября, 2016.[37]
  • Мини-конференция по Yii 2. Киев, 24 сентября 2016[38]
  • PHP Party в Иваново, 26 Ноября 2016[39]
  • Встреча Yii-разработчиков. Киев, 7 декабря 2016[40]

2017[править | править вики-текст]

  • Вторая профессиональная конференция веб разработчиков, использующих в своих приложениях фреймворк Yii. YiiConf-2017, Москва, 16-18 июня 2017[41][42]

Книги[править | править вики-текст]

  • Merkel Dirk. Chapter 6: PHP Frameworks // Expert PHP 5 Tools. — Packt Publishing, 2010. — ISBN 978-1-847198-38-9.
  • Winesett Jeffrey. Agile Web Application Development with Yii1.1 and PHP5. — Packt Publishing, 2010. — ISBN 978-1-847199-58-4.
  • Makarov Alexander. Yii 1.1 Application Development Cookbook. — Packt Publishing, 2011. — ISBN 978-1-84951-548-1.
  • Ullman Larry. The Yii Book. — Larry Ullman, 2013.
  • Winesett Jeffrey. Web Application Development with Yii and PHP. — Packt Publishing, 2012. — ISBN 978-1-84951-872-7.
  • Yii Rapid Application Development Hotshot. — Packt Publishing, 2012. — ISBN 978-1-84951-750-8.
  • Макаров Александр. Yii. Сборник рецептов. — ДМК Пресс, 2012. — ISBN 978-5-94074-786-4.

Ссылки[править | править вики-текст]

Примечания[править | править вики-текст]

  1. Александр Макаров. Произносим правильно - RMCreative (рус.). rmcreative.ru. Проверено 27 апреля 2017.
  2. 1 2 About Yii. Проверено 22 августа 2010. Архивировано 27 апреля 2012 года.
  3. About PRADO. Проверено 22 августа 2010. Архивировано 27 апреля 2012 года.
  4. PHP5 Coding Competition Winners, Google Blogoscoped (26 октября 2004). Проверено 7 февраля 2012.
  5. PRADO, TControl source
  6. Yii: a high-performance framework inheriting Prado (6 October 2008). Проверено 22 августа 2010. Архивировано 27 апреля 2012 года.
  7. Qiang Xue, Fabio Bas. PRADO PHP Framework. www.pradoframework.net. Проверено 4 ноября 2016.
  8. 1 2 Performance of Yii
  9. Yii Q&A 1 (en-US). samdark.github.io. Проверено 27 апреля 2017.
  10. Yii 1.1.9
  11. Сравнение PHP фреймворков — Kohana Yii Symfony CodeIgniter
  12. Evaluierung von PHP Frameworks
  13. Сравнение популярных PHP-фреймворков
  14. 1 2 http://www.yiiframework.com/news/133/yii-1-1-18-is-released/.
  15. Yii Framework Change Log
  16. Yii Framework Change Log
  17. http://www.yiiframework.com/files/CHANGELOG-1.1.12.txt
  18. http://www.yiiframework.com/files/CHANGELOG-1.1.13-RC.txt
  19. http://www.yiiframework.com/files/CHANGELOG-1.1.13.txt
  20. http://static.yiiframework.com/files/CHANGELOG-1.1.14.txt
  21. http://static.yiiframework.com/files/CHANGELOG-1.1.15.txt
  22. http://static.yiiframework.com/files/CHANGELOG-1.1.16.txt
  23. https://raw.githubusercontent.com/yiisoft/yii/1.1.17/CHANGELOG.
  24. Александр Макаров. Yii 1.1.19.
  25. Download Yii Framework | Yii Framework
  26. Yii 2.0.9. Проверено 26 июля 2016.
  27. Yii 2.0.10 is released | News | Yii PHP Framework. www.yiiframework.com. Проверено 4 ноября 2016.
  28. Yii 2.0.11 is released | News | Yii PHP Framework (англ.). www.yiiframework.com. Проверено 7 февраля 2017.
  29. Yii 2.0.12 is released | News | Yii PHP Framework (англ.). www.yiiframework.com. Проверено 7 июня 2017.
  30. Конференция YiiConf 2012 / Киев, Украина. 2012.yiiconf.ru. Проверено 4 июля 2017.
  31. Dev Pizza с Дмитрием Науменко «Профилирование в PHP с XDebug, XHprof, Blackfire» (рус.). www.facebook.com. Проверено 4 июля 2017.
  32. Прошёл хакатон по Yii Framework в TACC (рус.). Проверено 4 июля 2017.
  33. Александр Макаров. Хакатон по Yii Framework в TACC, отчёт - RMCreative (рус.). rmcreative.ru. Проверено 4 июля 2017.
  34. Intellectday: Yii2 meet up (рус.). www.facebook.com. Проверено 4 июля 2017.
  35. 21 июля, Киев. Лекция Дмитрия Немеша - Yii Framework (рус.). yiiframework.ru. Проверено 4 июля 2017.
  36. WebCamp - 29-31 июля, Одесса - Yii Framework (рус.). yiiframework.ru. Проверено 4 июля 2017.
  37. 3 сентября в Киеве PHP frameworks day - Yii Framework (рус.). yiiframework.ru. Проверено 4 июля 2017.
  38. Yii 2 Conference 2016, Киев - Yii Framework (рус.). yiiframework.ru. Проверено 4 июля 2017.
  39. Александр Макаров. Иваново 2016, отчёт - RMCreative (рус.). rmcreative.ru. Проверено 4 июля 2017.
  40. Киев 07.12.2016 - Yii Framework (рус.). yiiframework.ru. Проверено 4 июля 2017.
  41. YiiConf 2017.
  42. samdark. YiiConf 2017, слайды, фото и подкаст (ru-RU). yiiframework.ru. Проверено 4 июля 2017.