Interested Article - Yii

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

История

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

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

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

24 Марта 2020 вышел Yii 2.0.33 . Исправлено 22 ошибки, сделано 4 улучшения. Вышли расширения:

  • Shell 2.0.3.
  • Twig 2.4.0.
  • Redis 2.0.12.
  • Gii 2.2.0.

Релиз Yii 3 планируется в 2020 году. Среди новых расширений:

  1. Поддержка различных СУБД Redis , MongoDB ;
  2. Оформление кода по PSR ;
  3. Использование семантического версионирования SemVer ;
  4. DDD -совместимость;
  5. Отделение консоли от веба;
  6. Разбиение на части, которые можно использовать отдельно;
  7. Строгая типизация ;
  8. SOLID ;
  9. Убийство иерархии классов;
  10. Убийство большинства wrapper-расширений;
  11. Отказ от нестандартных объектов;
  12. Swoole / RoadRunner.

Возможности

Фреймворк отлично документирован: документация есть ко всему и на нескольких языках (русский, украинский, английский, испанский и другие). Также каждый метод имеет шапку в PHPDoc .

Расширения

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

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

Yii и шаблоны проектирования (паттерны)

Аналогично другим фреймворкам в Yii используются паттерны Dependency Injection (DI) и Service Locator.

Документы и лицензии

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

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

Сравнение с другими фреймворками

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

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

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

  • Yii активно развивается .
  • В некоторых сравнительных работах отмечается высокая скорость изучения фреймворка, получения результатов и прототипирования по сравнению с Zend Framework и Symfony . Также отмечается его стабильность и безопасность .

CMS и CMF на YII

Yii достаточно популярен среди разработчиков, на его основе существуют множество различных систем управления сайтами

  • Yupe CMS — это бесплатная платформа для разработки веб-приложений: интернет-магазинов, сайтов-сообществ, CRM-систем
  • SakuraCommerce — интернет магазин на Yii2
  • Easyii CMS — набор инструментов для быстрой разработки и простого управления контентом
  • Open Business Card CMS — это простой бесплатный скрипт для создания сайтов-визиток
  • Open Real Estate CMS — CMS для агентства недвижимости
  • Canape CMS — проприетарная CMS
  • SkeekS CMS — бесплатная CMS, позволяет построить веб-приложения любой сложности: простые сайты, сложные порталы, интернет-магазины, CRM-системы.

История версий

Цвет Обозначение
Красный Старая версия, не поддерживается
Жёлтый Старая версия, пока поддерживается
Зелёный Текущая версия
Голубой Будущая версия
Ветка Версия Дата выпуска Окончание поддержки Системные требования
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

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

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
1.1.11 29 июля 2012
1.1.12 19 августа 2012
1.1.13-RC 2 декабря 2012
1.1.13 30 декабря 2012
1.1.14 11 августа 2013
1.1.15 29 июня 2014
1.1.16 21 декабря 2014
1.1.17 13 января 2016
1.1.18 19 апреля 2017
1.1.19 8 июня 2017
1.1.20 6 июля 2018
2.0 2.0.0 12 октября 2014 PHP 5.4.0 и выше
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
2.0.10 20 октября 2016
2.0.11 1 февраля 2017
2.0.12 5 июня 2017
2.0.13 3 ноября 2017
2.0.14 19 февраля 2018
2.0.15 20 марта 2018
2.0.16 31 января 2019

События, встречи

2012

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

2016

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

2017

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

Книги

  • Merkel, Dirk. Chapter 6: PHP Frameworks // Expert PHP 5 Tools. — (англ.) , 2010. — ISBN 978-1-847198-38-9 .
  • Winesett, Jeffrey. (англ.) . — (англ.) , 2010. — ISBN 978-1-847199-58-4 .
  • Makarov, Alexander. Yii 1.1 Application Development Cookbook. — (англ.) , 2011. — ISBN 978-1-84951-548-1 .
  • Ullman, Larry. . — Larry Ullman, 2013.
  • Winesett, Jeffrey. Web Application Development with Yii and PHP (англ.) . — (англ.) , 2012. — ISBN 978-1-84951-872-7 .
  • O'Meara, JeLauren J.; Hamilton III, James R. Yii Rapid Application Development Hotshot (англ.) . — (англ.) , 2012. — ISBN 978-1-84951-750-8 .
  • Макаров, Александр. Yii. Сборник рецептов. — ДМК Пресс, 2012. — ISBN 978-5-94074-786-4 .
  • Alexander Makarov. Yii2 Application Development Cookbook . — 2019. — С. 109.
  • Сафронов М. Разработка веб-приложений в Yii 2. — 5-е изд.. — СПб. : « », 2015. — С. 392. — ISBN 978-5-97060-252-2 .

Ссылки

  • (англ.) — официальный сайт Yii

Примечания

  1. — 2023.
  2. — 2006.
  3. Александр Макаров. . rmcreative.ru. Дата обращения: 27 апреля 2017. 28 апреля 2017 года.
  4. . Дата обращения: 22 августа 2010. 27 апреля 2012 года.
  5. . Дата обращения: 22 августа 2010. 27 апреля 2012 года.
  6. . Google Blogoscoped. 2004-10-26. из оригинала 17 ноября 2011 . Дата обращения: 7 февраля 2012 .
  7. 24 августа 2014 года.
  8. (6 октября 2008). Дата обращения: 22 августа 2010. 27 апреля 2012 года.
  9. Qiang Xue, Fabio Bas. . www.pradoframework.net. Дата обращения: 4 ноября 2016. 4 июля 2016 года.
  10. . Дата обращения: 23 мая 2020. 13 мая 2020 года.
  11. . Дата обращения: 24 апреля 2020. 24 апреля 2020 года.
  12. . Дата обращения: 23 мая 2020. 5 июня 2020 года.
  13. . Дата обращения: 7 сентября 2011. Архивировано из 19 августа 2010 года.
  14. . Дата обращения: 24 апреля 2020. 19 сентября 2020 года.
  15. . Дата обращения: 23 мая 2020. 20 октября 2020 года.
  16. (англ.) . samdark.github.io. Дата обращения: 27 апреля 2017. 28 апреля 2017 года.
  17. . Дата обращения: 30 сентября 2016. 7 августа 2016 года.
  18. . Дата обращения: 16 июля 2011. 13 сентября 2012 года.
  19. . Дата обращения: 17 июля 2011. 4 сентября 2012 года.
  20. . Дата обращения: 23 мая 2020. 11 августа 2020 года.
  21. . Дата обращения: 23 мая 2022. 6 апреля 2022 года.
  22. . Дата обращения: 23 мая 2020. 31 мая 2020 года.
  23. . Дата обращения: 4 декабря 2018. 5 декабря 2018 года.
  24. . Дата обращения: 23 мая 2022. 16 мая 2022 года.
  25. . Дата обращения: 21 марта 2018. 21 марта 2018 года.
  26. . Дата обращения: 2 марта 2019. 6 марта 2019 года.
  27. " ". {{ cite news }} : Внешняя ссылка в |title= ( справка )
  28. . Дата обращения: 14 февраля 2012. 16 февраля 2012 года.
  29. . Дата обращения: 1 августа 2012. 1 августа 2012 года.
  30. . Дата обращения: 25 августа 2012. 22 августа 2012 года.
  31. . Дата обращения: 5 декабря 2012. 7 декабря 2013 года.
  32. . Дата обращения: 7 января 2013. 2 января 2013 года.
  33. . Дата обращения: 15 августа 2013. 14 августа 2013 года.
  34. . Дата обращения: 1 июля 2014. 7 июля 2014 года.
  35. . Дата обращения: 22 декабря 2014. 22 декабря 2014 года.
  36. . Дата обращения: 26 июля 2016. 16 марта 2016 года.
  37. Александр Макаров. . Дата обращения: 10 июня 2017. 8 июня 2017 года.
  38. (англ.) . Yii Framework. Дата обращения: 17 августа 2018. 17 августа 2018 года.
  39. . Дата обращения: 8 февраля 2011. 15 августа 2020 года.
  40. . Дата обращения: 26 июля 2016. 7 августа 2016 года.
  41. . www.yiiframework.com. Дата обращения: 4 ноября 2016. 3 ноября 2016 года.
  42. (англ.) . www.yiiframework.com. Дата обращения: 7 февраля 2017. 7 февраля 2017 года.
  43. (англ.) . www.yiiframework.com. Дата обращения: 7 июня 2017. 10 июня 2017 года.
  44. (англ.) . www.yiiframework.com. Дата обращения: 8 марта 2018. 5 марта 2018 года.
  45. (англ.) . Yii Framework. Дата обращения: 17 августа 2018. 17 августа 2018 года.
  46. . 2012.yiiconf.ru. Дата обращения: 4 июля 2017. 5 июля 2017 года.
  47. . www.facebook.com. Дата обращения: 4 июля 2017.
  48. . из оригинала 19 июня 2017 . Дата обращения: 4 июля 2017 .
  49. Александр Макаров. . rmcreative.ru. Дата обращения: 4 июля 2017. 23 июня 2017 года.
  50. . www.facebook.com. Дата обращения: 4 июля 2017.
  51. . yiiframework.ru. Дата обращения: 4 июля 2017.
  52. . yiiframework.ru. Дата обращения: 4 июля 2017.
  53. . yiiframework.ru. Дата обращения: 4 июля 2017.
  54. . yiiframework.ru. Дата обращения: 4 июля 2017. 21 сентября 2017 года.
  55. Александр Макаров. . rmcreative.ru. Дата обращения: 4 июля 2017. 24 июня 2017 года.
  56. . yiiframework.ru. Дата обращения: 4 июля 2017. 4 июля 2017 года.
  57. . Дата обращения: 4 июля 2017. 13 июля 2017 года.
  58. samdark. . yiiframework.ru. Дата обращения: 4 июля 2017. 3 июля 2017 года.
  59. . Дата обращения: 24 апреля 2020. 16 сентября 2020 года.
Источник —

Same as Yii