Cakephp
![]() | |
---|---|
Տեսակ | վեբ ծրագրի հենք |
Հեղինակ | [[ Cake Software Foundation, Inc.]] |
Գրված է՝ | PHP[1] |
ՕՀ | բազմապլատֆորմ |
Արտոնագիր | MIT արտոնագիր[2] |
Կայք | cakephp.org(անգլ.) |
Ելակոդ | github.com/cakephp/cakephp |
![]() |
CakePHP- ը բաց կոդով համացանցային ծրագիր է։ Այն հետևում է մոդել-դիտիչ-վերահսկիչի (MVC) մոտեցմանը և գրվում է PHP-ով, որը մոդելավորվում է Ruby on Rails- ի հասկացություններից հետո և տարածվում է MIT լիցենզիայի ներքո[3]։
CakePHP- ն օգտագործում է հայտնի ծրագրային ինժեներական հասկացություններ և ծրագրային ապահովման ձևավորման օրինակներ, ինչպիսիք են կոնվենցիան կազմաձևման, մոդելային դիտման-վերահսկիչի, ակտիվ գրառման, ասոցիացիայի տվյալների քարտեզագրման և առջևի վերահսկիչի վերաբերյալ։
Պատմություն[խմբագրել | խմբագրել կոդը]
CakePHP- ն սկսվել է 2005 թվականի ապրիլին, երբ լեհ ծրագրավորող Միխալ Թաթարյունիչիչը[4] գրել է PHP- ում արագ կիրառման զարգացման ծրագրի նվազագույն տարբերակը ՝ այն անվանելով Cake[5][6][7]: Նա հրապարակեց ֆրեյմվորկը MIT արտոնագրի ներքո և այն բացեց մշակողների առցանց համայնքին:[փա՞ստ]
2005 թ.-ի դեկտեմբերին Լ. Մաստերսը և Գ. Ջ. Վուդվորֆթը հիմնադրեց Cake Ծրագրային ապահովման հիմնադրամը, CakePHP- ի հետ կապված զարգացումը խթանելու համար[7]։ 1.0 տարբերակը թողարկվել է 2006 թվականի մայիսին։
Ծրագրի ոգեշնչումներից մեկը Ruby on Rails- ն էր ՝ օգտագործելով դրա շատ հայեցակարգեր։ Համայնքն այդ ժամանակից ի վեր մեծացել և տարածել է մի շարք ենթածրագրեր[8][9]։
2009 թ. Հոկտեմբերին ծրագրի ղեկավար Վուդվորթը և մշակող Ն. Աբելեն հրաժարական տվեցին նախագծից `իրենց սեփական նախագծերի վրա կենտրոնանալու համար, ներառյալ Lithium վեբ ֆրեյմվորկը (նախկինում CakePHP նախագծի մի մասն էր)։ Մնացած զարգացման խումբը շարունակում էր կենտրոնանալ նախկինում սահմանված ճանապարհային քարտեզի վրա[10]։
Հատկություններ[խմբագրել | խմբագրել կոդը]
Plugins- ը ծրագրավորողներին թույլ է տալիս փաթեթավորել վերահսկիչների, մոդելների, դիտումների և այլ դասերի համադրությունները ՝ բազմիցս կիրառություններում և այլ ծրագրավորողների կողմից օգտագործելու համար։ CakePHP 3-ից ի վեր հնարավոր է տեղադրել Composer-ով հավելվածներ[11]։
CakePHP ORM- ը (օբյեկտի հետ կապի քարտեզագրում) առաջադեմ PHP հիբրիդ է ՝ ակտիվ գրառման օրինակին և տվյալների քարտեզագրման օրինակին ՝ երկուսն էլ փոխառելով հիմնական հասկացությունները։ CakePHP ORM- ն օգտագործում է երկու հիմնական օբյեկտի տիպ ՝ table դասը, որը ներկայացնում է տվյալների բազայի աղյուսակները և անհատական table-ի տողերը ներկայացնող կազմակերպությունների դասերը[12][13]։
Query builder ներկայացվեց CakePHP 3-ում ՝ որպես նոր ORM- ի ուղեկից։ Հարցման արտադրողը մատուցում է դասընթացների մի շարք դասընթացներ և մեթոդներ, որոնք ծրագրորեն կառուցելու են SQL հարցումները `փոխարենը դրանք ձեռքով գրելու փոխարեն։ ORM- ը լայնորեն կիրառում է հարցումների ստեղծողի կողմից[13][14]։
Ուղղորդում և հակառակ ուղղում։ CakePHP router թույլ է տալիս բարդ HTTP կիրառական ուղղորդում, մուտքային պահանջները ուղղել ճիշտ վերահսկիչին և գործողություններին։ Հակադարձ routing-ը ստեղծում է փոխկապակցվածություն routes-ի և լինկերի միջև ՝ ապահովելով, որ հղումները միշտ ստեղծվում են ճիշտ միասնական ռեսուրսների որոնիչի հետ։
View բջիջները տրամադրում են փոքր, մինի հսկիչ սարքեր, որոնք կարող են օգտվել դիտման տրամաբանությունից և ներկայացնել ձևանմուշներ։ Սրանք իդեալական են փոքր, վերաօգտագործելի էջի բաղադրիչներ ստեղծելու համար։
Միգրացիաները ապահովում են տվյալների բազայի սխեմաների տարբերակների վերահսկում։ Դրանք հնարավորություն են տալիս ապահովել, որ կիրառման տրամաբանության և տվյալների բազայի համապատասխան փոփոխությունները համաժամեցվեն։ Սա մեծապես հեշտացնում է ինչպես CakePHP հավելվածների տեղակայումը, այնպես էլ զարգացումը բազմաբնույթ ծրագրավորող թիմերում։ CakePHP միգրացիոն գործիքը հիմնված է Phinx նախագծի վրա։
Ավտոմատ կարգաբերում, ծրագրավորողներին դյուրին է դարձնում ORM կամ Query Builder- ի կողմից ստեղծված արդյունքների հավաքածուները։
Ձևաթղթի ձևավորողն ու վավերացուցիչը հնարավորություն են տալիս ծրագրային ձևավորել այնպիսի ձևեր, որոնք կապված են մոդելի շերտին ինչպես տվյալների տիպերի, այնպես էլ վավերացման համար[15]։
CakePHP Bake- ը կիրառական կմախքներ և boilerplate ծածկագիրն ավտոմատ կերպով առաջացնելու գործիք է։ Այն օգտագործում է նախնական տվյալների բազայի սխեման `ճիշտ տվյալների հարաբերությունների և տվյալների տեսակների ճիշտ եզրակացության համար և այն օգտագործելով` վերահսկիչների, մոդելի օբյեկտի և ձևանմուշների ամբողջական փաթեթ ստեղծելու համար։ Այն կարող է առաջացնել CRUD- ի հիմնական դիմում ՝ զրոյական կոդավորմամբ[16]։
Գիտաժողովներ[խմբագրել | խմբագրել կոդը]
Տարի | Գտնվելու վայրը |
---|---|
2019 | Տոկիո, Ճապոնիա |
2017 | Նյու Յորք, ՆՅ, ԱՄՆ |
2016 | Ամստերդամ, Նիդեռլանդներ |
2015 | Նյու Յորք, ՆՅ, ԱՄՆ |
2014 | Մադրիդ, Իսպանիա |
2013 | Սան Ֆրանցիսկո, ՍԱ, ԱՄՆ |
2012 | Մանչեստր, ՄԹ |
2011 | Մանչեստր, ՄԹ |
2010 | Չիկագո, ԻԼ, ԱՄՆ |
2009 | Բեռլին, Գերմանիա |
2008 | Բուենոս Այրես, Արգենտինա |
2008 | Օրլանդո, ՖԼ, ԱՄՆ |
Դասընթացներ[խմբագրել | խմբագրել կոդը]
Պաշտոնական առցանց դասընթացներ, որոնք հովանավորվում են CakeDC-ի կողմից։ Ամսական կենդանի դասընթացներ, որոնք ընդգրկում են մի շարք թեմաներ, ներառյալ.
- Ստանդարտ CakePHP 2 դասընթաց
- Ստանդարտ CakePHP 3 դասընթաց
- Առաջադեմ CakePHP 3 դասընթաց
- Ստանդարտ CakePHP 4 դասընթաց
Ծանոթագրություններ[խմբագրել | խմբագրել կոդը]
- ↑ The cakephp Open Source Project on Open Hub: Languages Page — 2006.
- ↑ The cakephp Open Source Project on Open Hub: Licenses Page — 2006.
- ↑ «CakePHP Manual - CakePHP at a Glance»։ Վերցված է 2015-03-09
- ↑ «Contributors - cakephp»։ cakephp.lighthouseapp.com։ Արխիվացված է օրիգինալից 2021-01-18-ին։ Վերցված է 2020-08-23
- ↑ «Introduction to CakePHP - 1.1»։ book.cakephp.org
- ↑ «Archived copy»։ Արխիվացված է օրիգինալից 2016-03-03-ին։ Վերցված է 2012-08-31
- ↑ 7,0 7,1 «Listing» (PDF)։ www.cs.colorado.edu։ Վերցված է 2019-07-01
- ↑ «CakeForge»։ Արխիվացված է օրիգինալից 2009-09-08-ին։ Վերցված է 2009-09-05
- ↑ «TheChaw»։ Վերցված է 2009-09-05
- ↑ «The Cake is Still Rising»։ Արխիվացված է օրիգինալից 2010-10-10-ին։ Վերցված է 2009-10-25
- ↑ «Plugins»։ Վերցված է 2020-03-13
- ↑ «ORM»։ Վերցված է 2020-03-13
- ↑ 13,0 13,1 «My CakePHP 3 Review – Still Fresh, Still Hot»։ Վերցված է 2020-03-13
- ↑ «Query builder»։ Վերցված է 2020-03-13
- ↑ «Form helper»։ Վերցված է 2020-03-13
- ↑ «CakePHP 3: Bake by example»։ Վերցված է 2020-03-13
Մատենագրություն[խմբագրել | խմբագրել կոդը]
- Munro Jamie (April 9, 2011)։ «Rapid Application Development With CakePHP» (1st ed.)։ Createspace։ էջ 170։ ISBN 1-4609-5439-4։ Արխիվացված է օրիգինալից July 14, 2017-ին։ Վերցված է May 20, 2011.
- Golding David (July 21, 2008)։ «Beginning CakePHP: from Novice to Professional» (1st ed.)։ Apress։ էջ 344։ ISBN 1-4302-0977-1։ Արխիվացված է օրիգինալից 2011-01-12-ին։ Վերցված է 2009-06-12.
- Chan Kai, Omokore John, Miller Richard (December 2, 2008)։ «Practical CakePHP Projects» (1st ed.)։ Apress։ էջ 400։ ISBN 1-4302-1578-X։ Արխիվացված է օրիգինալից 2010-12-23-ին։ Վերցված է 2009-06-12.
- Watts James, González Jorge (August 5, 2014)։ «CakePHP 2 Application Cookbook» (1st ed.)։ packtpub։ էջ 346։ ISBN 9781782160083։ Վերցված է 2014-08-05.
Արտաքին հղումներ[խմբագրել | խմբագրել կոդը]
|