Įspūdžiai iš Laravel London meetup: Laravel 5 ir Repositories

2014-11-14

Vakar man teko apsilankyti renginyje Laravel London meetup, ir būtent tokį Laravel temos susitikime buvau antrą kartą tad galiu papasakoti tiek apie šį konkretų renginį, tiek apie bendrą Laravel tendenciją ir UK, ir pasaulyje.

Į šį Laravel renginį vietų nebeliko kažkur savaitę iki paties renginio. Tiesa, vietų buvo tik 50, ir simbolinė 5 svarų kaina nebuvo didelė siena. Taigi, Laravel bendruomenė Londone auga sparčiai - ta pati tendencija matoma ir pasaulyje, gal greitu metu matysime Laravel renginius ir Lietuvoje, kol kas šauniai veikia Vilnius PHP ir Kaunas PHP renginiai.

Šiame meetupe buvo du pranešėjai, atskirai papasakosiu apie jų temas ir įžvalgas.

Laravel 5 apžvalga

Tiems, kas seka Laravel raidą, nėra paslaptis, kad ne už kalnų nauja versija - kūrėjas Taylor Otwell anonsavo ją dar prieš mėnesį, ir greičiausiai ji oficialiai pasirodys sausio mėnesį (pasirodytų gal ir gruodį, bet nėra prasmės to daryti per Kalėdas).

Taigi, čia vienos kompanijos CTO papasakojo apie Laravel 5 naujoves, kurių tikrai nemažai:

  • Nauja katalogų struktūra
  • Route annotations
  • Route caching
  • Method injection
  • Middleware
  • Flysystem
  • Illuminate kontraktai

Ir kt.

Atrodo baisoka, bet kai viskas buvo sudėliota po lentynas, galima konstatuoti tokius faktus:

  1. Dauguma Laravel 5 naujovių yra nebutinos: nenori - nenaudoji
  2. Planuojama išleisti vieną ar net kelis skirtingus paketus, kurie "numigruos" Laravel 4 struktūrą į naują versiją - tiesa, dar neaišku kaip stabiliai jie veiks
  3. Buvo pranešta, kad Laravel kūrėjas Taylor Otwell nuo sausio 1 dienos dirbs prie Laravel pilnu etatu (iki šiol dirbo 50%), tad galima laukti dar spartesnių rezultatų
  4. Laravel 4 niekur nedings, galėsite jį drąsiai naudoti ir toliau

Taigi, overall - bijoti Laravel 5 nėra ko, o ir laiko pasiruošti dar yra. Planuoju pats daryti online-kursą apie naują versiją, kai tik ji bus išleista oficialiai.

 

Interfaces and Repositories

Būtent tokia buvo antro pranešėjo tema. Atrodo lyg ir ne apie Laravel - o apie OOP bei Design Patterns, bet buvo rodoma kaip pritaikyti šiuos terminus būtent Laravel struktūroje.

Taigi, trumpai tariant - jeigu iš savo Controllers klasių kviečiate Eloquent metodą tiesiogiai pvz Contact::all(), tai jau yra nelankstu. Ne tik todėl, kad galite pakeisti duomenų šaltinį iš MySQL į kokį kitą, bet ir kitas visai realus variantas - sakykime, jūs leidžiate naują projekto versiją, kurioje reikia rodyti kontaktus, sukurtus tik 2014 metais. Tai reikia tada eiti per visur per kodą ir ieškoti, kur naudojama Contact klasė ir keisti all() į where(). Nelankstu.

Tai buvo aiškinama apie tarpinį lygį tarp Eloquent modelių ir Laravel Controllers klasių ir rodomos geriausios praktikos, kol galiausiai nueita iki bazinio interfeiso, modelio ir pan.

Mano nuomonė šiuo atveju dvejopa - tokie patobulinimai realiai pritaikomi tik tada kai kuriama didelė sistema, arba kai planuojama kad ji išaugs ar kad yra didelė tikimybė kažkam iš fundamentalių dalykų pasikeisti. Pranešimo autorius pasakojo savo asmeninį pavyzdį kai jiems teko pakeist Eloquent į Elastic Search, bet, tiesą pasakius, jeigu jūsų projektas išaugs iki tokio lygio, tai manau kad jūs turėsite didesnių architektūros problemų ir galbūt net verta bus perrašyti jį nuo nulio. Bet, be abejo, priklauso nuo projekto.

 

Štai tokie įspūdžiai iš Laravel London meetup, matosi kad Laravel bendruomenė žygiuoja į priekį pilnu pajėgumu.






Naujausi PHPpamokos.lt online-kursai

23 EUR (79.41 Lt)
23 EUR (79.41 Lt)
23 EUR (79.41 Lt)
Nuo Laravel 4 prie Laravel 5
Povilas Korop

23 EUR (79.41 Lt)
MySQL: nuo pradmenų iki optimizavimo
Povilas Korop
23 EUR (79.41 Lt)
OOP: objektinis programavimas su PHP
Povilas Korop
23 EUR (79.41 Lt)
Kaip kurti Wordpress pluginus?
Arūnas Liuiza

23 EUR (79.41 Lt)
PHP online-kursas pradedantiesiems
Povilas Korop