Yii
Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från
versionen som granskades den 11 augusti 2017; kontroller kräver
79 redigeringar .
Yii (uttalas [ji:] och ofta skrivet på ryska yii [2] ) är ett objektorienterat komponentramverk som implementerar MVC -paradigmet [3] . På kinesiska betyder Yii "enkel och progressiv", och Yii är också en akronym för "Yes It Is!".
Historik
Historien om Yii började den 1 januari 2008 som ett projekt för att fixa några brister i PRADO (PHP Rapid Application Development Object-oriented) ramverket, som vann 2004 Zend PHP 5-kodningstävlingen [4] [5] .
PRADO-ramverket var ett försök att porta ASP.NET till PHP - plattformen , inklusive ViewState, PostBacks, Page_Load och OnClick, vilket resulterade i kodavsnitt som helt enkelt kopierades från ASP.NET . Till exempel att dela upp i Rare Fields och Occasional Fields i Control-klassen [6] för minnesoptimering, vilket är vettigt i .NET men är av tvivelaktigt värde i PHP. PRADO ärvde nästan alla nackdelarna med ASP.NET: det var långsamt att rendera komplexa sidor, hade en brant inlärningskurva och var ganska svårt att ställa in [7] .
Vid något tillfälle insåg Qiang Sue, grundaren och utvecklaren av kärnan i PRADO [8] ramverket , att PHP-ramverket borde byggas lite annorlunda. I oktober 2008, efter över 10 månader av stängd utveckling, släpptes den första alfaversionen . Den 3 december 2008 släpptes Yii 1.0 [3]
Den 24 mars 2020 släpptes Yii 2.0.33 [9] . Fixade 22 buggar, gjorde 4 förbättringar. Släppta tillägg:
- Skal 2.0.3.
- Kvist 2.4.0.
- Redis 2.0.12.
- Gii 2.2.0.
Yii 3 är planerad till 2020. Nya tillägg inkluderar:
- Stöd för olika DBMS Redis , MongoDB ;
- Koddesign enligt PSR [10] ;
- Använda semantisk versionshantering SemVer [11] ;
- DDD -kompatibel;
- Separation av konsolen från webben;
- Uppdelning i delar som kan användas separat;
- Starkt skrivande ;
- SOLID ;
- Att döda klasshierarkin;
- Dödar de flesta omslagsförlängningar;
- Avvisande av icke-standardiserade objekt;
- Swoole/Road Runner.
Funktioner
Ramverket är väldokumenterat: det finns dokumentation för allt och på flera språk (ryska, ukrainska, engelska, spanska och andra). Varje metod har också en rubrik i PHPDoc .
Tillägg
Yii-projektet inkluderar ett arkiv med anpassade tillägg.
Det fanns också ett officiellt tilläggsbibliotek, zii, som så småningom slogs samman i huvudramverket; den har inkluderats i alla utgåvor sedan Yii version 1.1.0 och inkluderar ytterligare beteenden och widgets som rutnät och jQuery UI .
Liksom andra ramverk använder Yii mönstren Dependency Injection (DI) och Service Locator. [femton]
Dokument och licenser
Yii har en samling officiell dokumentation, till exempel en handledning om att utveckla en enkel bloggapplikation, en manual som beskriver varje funktion och en klassreferens som ger varje detalj om egenskaper, metoder och händelser. Det finns också dokumentation från användare, varav det mesta finns tillgängligt på wikin på den officiella webbplatsen.
Yii släpps under den nya BSD-licensen (3-klausul licens). Detta innebär att du kan använda den gratis för att utveckla både öppen källkod och egna webbapplikationer. Texten i den officiella Yii-dokumentationen är licensierad till allmänheten under GNU Free Documentation License (GFDL) . I allmänhet kan innehållet i Yii-dokumentationen kopieras, ändras och omdistribueras så länge som den nya versionen ger andra samma friheter och erkänner författarna till den använda Yii-dokumentationen. Logotypen är licensierad under Creative Commons Attribution-No Derivative Works 3.0 Unported License
Jämförelse med andra ramverk
Enligt resultaten från phpmark-tester visade Yii den bästa prestandan [12] .
Prestanda för ramverken i dessa tester utvärderades på artificiella exempel som Hello world . Testerna visar initieringstiden för ramverken, och baserat på dem kan man bara dra slutsatsen att Yii har ett kvalitetslat initieringsundersystem (det vill säga koden laddas bara när den behövs). Det finns ingen bekräftad information om att Yii är snabbare än andra ramverk i verkliga förhållanden.
I bloggosfären kan du hitta en hel del artiklar med en jämförande analys av ramverk. I allmänhet observeras följande trender:
- Yii utvecklas aktivt [16] [17] .
- Vissa jämförande artiklar noterar den höga hastigheten att lära sig ramverket, få resultat och prototyper jämfört med Zend Framework och Symfony . Det är också känt för sin stabilitet och säkerhet [18] [19] .
CMS och CMF på YII
Yii är ganska populärt bland utvecklare, det finns många olika innehållshanteringssystem baserade på det.
- Yupe CMS [20] är en gratis plattform för att utveckla webbapplikationer: onlinebutiker, community-sajter, CRM-system
- SakuraCommerce [21] - onlinebutik på Yii2
- Easyii CMS [22] - en uppsättning verktyg för snabb utveckling och enkel innehållshantering
- Open Business Card CMS [23] är ett enkelt gratis skript för att skapa visitkortswebbplatser
- Open Real Estate CMS [24] - CMS för fastighetsförmedling
- Canape CMS - proprietärt CMS [25]
- SkeekS CMS [26] är ett gratis CMS som låter dig bygga webbapplikationer av vilken komplexitet som helst: enkla webbplatser, komplexa portaler, onlinebutiker, CRM-system.
Versionshistorik
Färg
|
Beteckning
|
Röd
|
Gammal version, stöds inte
|
Gul
|
Den gamla versionen stöds fortfarande
|
Grön
|
Aktuell version
|
Blå
|
framtida version
|
Gren
|
Version
|
Utgivningsdatum
|
Slut på support
|
Systemkrav
|
1.0
|
1.0
|
3 december 2008
|
31 december 2010
|
PHP 5.1.0 eller högre
|
1.0.1
|
4 januari 2009
|
1.0.2
|
1 februari 2009
|
1.0.3
|
1 mars 2009
|
1.0.4
|
5 april 2009
|
1.0.5
|
10 maj 2009
|
1.0.6
|
7 juni 2009
|
1.0.7
|
5 juli 2009
|
1.0.8
|
9 augusti 2009
|
1.0.9
|
6 september 2009
|
1.0.10
|
18 oktober 2009
|
1.0.11
|
13 december 2009
|
1.0.12
|
14 mars 2010
|
1.1
|
1.1.0
|
10 januari 2010
|
31 december 2015
till 1 december 2019
kodsäkerhetsstöd [27]
|
PHP 5.1.0 eller högre
|
1.1.1
|
14 mars 2010
|
1.1.2
|
2 maj 2010
|
1.1.3
|
4 juli 2010
|
1.1.4
|
5 september 2010
|
1.1.5
|
14 november 2010
|
1.1.6
|
16 januari 2011
|
1.1.7
|
26 mars 2011
|
1.1.8
|
26 juni 2011
|
1.1.9
|
1 januari 2012
|
1.1.10
|
12 februari 2012 [28]
|
1.1.11
|
29 juli 2012 [29]
|
1.1.12
|
19 augusti 2012 [30]
|
1.1.13-RC
|
2 december 2012 [31]
|
1.1.13
|
30 december 2012 [32]
|
1.1.14
|
11 augusti 2013 [33]
|
1.1.15
|
29 juni 2014 [34]
|
1.1.16
|
21 december 2014 [35]
|
1.1.17
|
13 januari 2016 [36]
|
1.1.18
|
19 april 2017 [27]
|
1.1.19
|
8 juni 2017 [37]
|
1.1.20
|
6 juli 2018 [38]
|
2.0
|
2.0.0
|
12 oktober 2014
|
|
PHP 5.4.0 och senare [39]
|
2.0.1
|
7 december 2014
|
2.0.2
|
11 januari 2015
|
2.0.3
|
1 mars 2015
|
2.0.4
|
10 maj 2015
|
2.0.5
|
11 juli 2015
|
2.0.6
|
10 augusti 2015
|
2.0.7
|
14 februari 2016
|
2.0.8
|
28 april 2016
|
2.0.9
|
11 juli 2016 [40]
|
2.0.10
|
20 oktober 2016 [41]
|
2.0.11
|
1 februari 2017 [42]
|
2.0.12
|
5 juni 2017 [43]
|
2.0.13
|
3 november 2017
|
2.0.14
|
19 februari 2018 [44]
|
2.0.15
|
20 mars 2018 [45]
|
2.0.16
|
31 januari 2019
|
Evenemang, möten
2012
- Den första professionella konferensen för webbutvecklare som använder Yii-ramverket i sina applikationer. YiiConf-2012, Kiev, 19 maj 2012 [46]
2016
- Yii2 möte. Dev Pizza med Dmitry Naumenko "Profilering i PHP med XDebug, XHprof, Blackfire". Kiev, 17 maj 2016 [47]
- Yii Framework Hackathon på TACC, DevConf. Moskva, 18 och 19 juni 2016 [48] [49]
- Yii2 möte med Mikhail Bodnarchuk, Kiev 13 juli 2016 [50]
- Föreläsning av Dmitry Nemesh. Kiev. 21 juli 2016 [51]
- webbkamera. Odessa, 29–31 juli 2016 [52]
- PHP ramverk dag. Kiev, 3 september 2016. [53]
- Minikonferens om Yii 2. Kiev, 24 september 2016 [54]
- PHP-fest i Ivanovo, 26 november 2016 [55]
- Möte för Yii-utvecklare. Kiev, 7 december 2016 [56]
2017
- Den andra professionella konferensen för webbutvecklare som använder Yii-ramverket i sina applikationer. YiiConf-2017, Moskva, 16-18 juni 2017 [57] [58]
Böcker
- Merkel, Dirk. Kapitel 6: PHP Frameworks // Expert PHP 5-verktyg. — Packt Publishing, 2010. - ISBN 978-1-847198-38-9 .
- Winesett, Jeffrey. Agil webbapplikationsutveckling med Yii1.1 och PHP5 . — Packt Publishing, 2010. - ISBN 978-1-847199-58-4 .
- Makarov, Alexander. Yii 1.1 Kokbok för applikationsutveckling. — Packt Publishing, 2011. - ISBN 978-1-84951-548-1 .
- Ullman, Larry. Yii-boken . — Larry Ullman, 2013.
- Winesett, Jeffrey. Webbapplikationsutveckling med Yii och PHP . — Packt Publishing, 2012. - ISBN 978-1-84951-872-7 .
- O'Meara, JeLauren J.; Hamilton III, James R. Yii Snabb applikationsutveckling Hotshot . — Packt Publishing, 2012. - ISBN 978-1-84951-750-8 .
- Makarov, Alexander. Yii. Samling av recept. - DMK Press, 2012. - ISBN 978-5-94074-786-4 .
- Alexander Makarov. Yii2 Kokbok för applikationsutveckling [59] . - 2019. - S. 109.
- Safronov M. Utveckling av webbapplikationer i Yii 2. - 5:e upplagan - St Petersburg. : " DMK Press ", 2015. - P. 392. - ISBN 978-5-97060-252-2 .
Länkar
Anteckningar
- ↑ yii Open Source-projektet på Open Hub: Languages-sidan - 2006.
- ↑ Alexander Makarov. Vi uttalar korrekt - RMCreative . rmcreative.ru. Hämtad 27 april 2017. Arkiverad från originalet 28 april 2017. (obestämd)
- ↑ 12 Om Yii . Hämtad 22 augusti 2010. Arkiverad från originalet 27 april 2012. (obestämd)
- ↑ Om PRADO . Hämtad 22 augusti 2010. Arkiverad från originalet 27 april 2012. (obestämd)
- ↑ Vinnare av PHP5 -kodningstävling , Google Blogoscoped (26 oktober 2004). Arkiverad från originalet den 17 november 2011. Hämtad 7 februari 2012.
- ↑ PRADO, TControl-källa Arkiverad 24 augusti 2014.
- ↑ Yii: ett högpresterande ramverk som ärver Prado (6 oktober 2008). Hämtad 22 augusti 2010. Arkiverad från originalet 27 april 2012. (obestämd)
- ↑ Qiang Xue, Fabio Bas. PRADO PHP Framework . www.pradoframework.net Hämtad 4 november 2016. Arkiverad från originalet 4 juli 2016. (obestämd)
- ↑ Yii 2.0.33 | Nyheter | Yii PHP Framework . Hämtad 23 maj 2020. Arkiverad från originalet 13 maj 2020. (obestämd)
- ↑ PHP-FIG - PHP Framework Interop Group - PHP-FIG . Hämtad 24 april 2020. Arkiverad från originalet 24 april 2020. (obestämd)
- ↑ Semantisk version 2.0.0 | semantisk versionering . Hämtad 23 maj 2020. Arkiverad från originalet 5 juni 2020. (obestämd)
- ↑ 1 2 Yii prestanda (nedlänk) . Datum för åtkomst: 7 september 2011. Arkiverad från originalet den 19 augusti 2010. (obestämd)
- ↑ Smarty Guide | Smart . Hämtad 24 april 2020. Arkiverad från originalet 19 september 2020. (obestämd)
- ↑ Specialämnen: Konsolkommandon | Den kompletta guiden till Yii 2.0 | Yii PHP Framework . Hämtad 23 maj 2020. Arkiverad från originalet 20 oktober 2020. (obestämd)
- ↑ "Dependency Injection and Service Locator in Yii 2" - Dmitry Naumenko på Yii2-konferensen - YouTube
- ↑ Yii Frågor och Svar 1 . samdark.github.io. Hämtad 27 april 2017. Arkiverad från originalet 28 april 2017.
- ↑ Yii 1.1.9 . Hämtad 30 september 2016. Arkiverad från originalet 7 augusti 2016. (obestämd)
- ↑ Utvärdering av PHP-ramverk . Hämtad 16 juli 2011. Arkiverad från originalet 13 september 2012. (obestämd)
- ↑ Jämförelse av populära PHP-ramverk . Hämtad 17 juli 2011. Arkiverad från originalet 4 september 2012. (obestämd)
- ↑ Japp! - Content Management System (CMS) på Yiiframework . Hämtad 23 maj 2020. Arkiverad från originalet 11 augusti 2020. (obestämd)
- ↑ Arkiverad kopia . Hämtad 23 maj 2022. Arkiverad från originalet 6 april 2022. (obestämd)
- ↑ Easyii Yii2 CMS . Hämtad 23 maj 2020. Arkiverad från originalet 31 maj 2020. (obestämd)
- ↑ MonoRay.ru - Produkter - Öppna visitkort . Hämtad 4 december 2018. Arkiverad från originalet 5 december 2018. (obestämd)
- ↑ Arkiverad kopia . Hämtad 23 maj 2022. Arkiverad från originalet 16 maj 2022. (obestämd)
- ↑ Effektivt CMS för marknadsföring av webbplatser från WebCanape - Canape CMS . Hämtad 21 mars 2018. Arkiverad från originalet 21 mars 2018. (obestämd)
- ↑ Skeeks CMS (Yii2 CMS) - Internetprojektledningssystem, skapande av webbprojekt, företagsinterna portalhanteringssystem . Hämtad 2 mars 2019. Arkiverad från originalet 6 mars 2019. (obestämd)
- ↑ 1 2 http://www.yiiframework.com/news/133/yii-1-1-18-is-released/ .
- ↑ Yii Framework Changelog . Hämtad 14 februari 2012. Arkiverad från originalet 16 februari 2012. (obestämd)
- ↑ Yii Framework Changelog . Hämtad 1 augusti 2012. Arkiverad från original 1 augusti 2012. (obestämd)
- ↑ Arkiverad kopia . Hämtad 25 augusti 2012. Arkiverad från originalet 22 augusti 2012. (obestämd)
- ↑ Arkiverad kopia . Hämtad 5 december 2012. Arkiverad från originalet 7 december 2013. (obestämd)
- ↑ Arkiverad kopia . Datum för åtkomst: 7 januari 2013. Arkiverad från originalet 2 januari 2013. (obestämd)
- ↑ Arkiverad kopia . Hämtad 15 augusti 2013. Arkiverad från originalet 14 augusti 2013. (obestämd)
- ↑ Arkiverad kopia . Datum för åtkomst: 1 juli 2014. Arkiverad från originalet den 7 juli 2014. (obestämd)
- ↑ Arkiverad kopia . Datum för åtkomst: 22 december 2014. Arkiverad från originalet 22 december 2014. (obestämd)
- ↑ https://raw.githubusercontent.com/yiisoft/yii/1.1.17/CHANGELOG . Hämtad 26 juli 2016. Arkiverad från originalet 16 mars 2016. (obestämd)
- ↑ Alexander Makarov. Yii 1.1.19 . Hämtad 10 juni 2017. Arkiverad från originalet 8 juni 2017. (obestämd)
- ↑ Yii 1.1.20 släpps . yii ram. Hämtad 17 augusti 2018. Arkiverad från originalet 17 augusti 2018.
- ↑ Ladda ner Yii Framework | yii ramverk . Hämtad 8 februari 2011. Arkiverad från originalet 15 augusti 2020. (obestämd)
- ↑ Yii 2.0.9 . Hämtad 26 juli 2016. Arkiverad från originalet 7 augusti 2016. (obestämd)
- ↑ Yii 2.0.10 släpps | Nyheter | Yii PHP Framework . www.yiiframework.com. Hämtad 4 november 2016. Arkiverad från originalet 3 november 2016. (obestämd)
- ↑ Yii 2.0.11 släpps | Nyheter | Yii PHP Framework . www.yiiframework.com. Datum för åtkomst: 7 februari 2017. Arkiverad från originalet 7 februari 2017.
- ↑ Yii 2.0.12 släpps | Nyheter | Yii PHP Framework . www.yiiframework.com. Hämtad 7 juni 2017. Arkiverad från originalet 10 juni 2017.
- ↑ Yii 2.0.14 släpps | Nyheter | Yii PHP Framework . www.yiiframework.com. Hämtad 8 mars 2018. Arkiverad från originalet 5 mars 2018.
- ↑ Släpper Yii 2.0.15 och databastillägg med säkerhetskorrigeringar . yii ram. Hämtad 17 augusti 2018. Arkiverad från originalet 17 augusti 2018.
- ↑ YiiConf 2012 / Kiev, Ukraina . 2012.yiiconf.ru. Hämtad 4 juli 2017. Arkiverad från originalet 5 juli 2017. (obestämd)
- ↑ Dev Pizza med Dmitry Naumenko "Profilering i PHP med XDebug, XHprof, Blackfire" . www.facebook.com. Hämtad: 4 juli 2017. (ryska)
- ↑ Klarade ett hackathon på Yii Framework på TACC (ryska) . Arkiverad från originalet den 19 juni 2017. Hämtad 4 juli 2017.
- ↑ Alexander Makarov. Hackathon om Yii Framework i TACC, rapport - RMCreative . rmcreative.ru. Hämtad 4 juli 2017. Arkiverad från originalet 23 juni 2017. (ryska)
- ↑ Intellectday: Yii2 möter upp . www.facebook.com. Hämtad: 4 juli 2017. (ryska)
- ↑ 21 juli, Kiev. Föreläsning av Dmitry Nemesh - Yii Framework . yiiframework.ru. Hämtad: 4 juli 2017. (ryska)
- ↑ WebCamp - 29-31 juli, Odessa - Yii Framework . yiiframework.ru. Hämtad: 4 juli 2017. (ryska)
- ↑ 3 september i Kiev PHP ramverk dag - Yii Framework . yiiframework.ru. Hämtad: 4 juli 2017. (ryska)
- ↑ Yii 2 Conference 2016, Kiev - Yii Framework . yiiframework.ru. Hämtad 4 juli 2017. Arkiverad från originalet 21 september 2017. (ryska)
- ↑ Alexander Makarov. Ivanovo 2016, rapport - RMCreative . rmcreative.ru. Hämtad 4 juli 2017. Arkiverad från originalet 24 juni 2017. (ryska)
- ↑ Kiev 07.12.2016 - Yii Framework . yiiframework.ru. Hämtad 4 juli 2017. Arkiverad från originalet 4 juli 2017. (ryska)
- ↑ YiiConf 2017 . Hämtad 4 juli 2017. Arkiverad från originalet 13 juli 2017. (obestämd)
- ↑ mörkt. YiiConf 2017, bilder, foton och podcast . yiiframework.ru. Hämtad 4 juli 2017. Arkiverad från originalet 3 juli 2017. (ryska)
- ↑ GitHub - samdark/yii2-kokbok: Yii 2.0 Community Cookbook . Hämtad 24 april 2020. Arkiverad från originalet 16 september 2020. (obestämd)