Aš visuomet sakiau, PHP tokia lengva kalba, kad ją gali išmokti bet kas. Norint parašyti skriptą PHP kalba nereikia nei talento, nei daug žinių. Tačiau duokit talentingiems žmonės lengvą dalyką ir jie pavers sudėtingu. Apie ką aš kalbu? Apie Zend Framework.
Skaityti toliau »
Laikas - pinigai. Visi žinome šią taisyklę. Naudojame karkasus, TVS, galų gale bibliotekas. Viskas tam, jog sumažintume laiką, kurį praleidžiame programuodami portalą ar užduotį, redukuoti jo apimtį ir tiesiog atsikratyti dalies nuobodaus darbo perkeliant jį mūsų naudojamų pagalbinių priemonių kūrėjams.
Ruby On Rails (toliau Rails) karkasas palengvino kai kurių programuotojų kasdienybę - pasiūlė sprendimus, kurie taupo laiką, tuo pačiu išlikdami lankstūs. Vienas iš nuostabiausių jo aspektų - programuotojų bendruomenė, suvienyta idėjos, jog programavimas neturėtų būti kančia ir tonos SQL ar XML konfigūracinių failų rašymas. Taip gimė tūkstančiai įvairių įskiepių (angl. - plugins), kurie palengvino Jūsų programavimo darbus, pradedant nuo failų siuntimo į serverį, baigiant foniniame režime veikiančiais procesais (kaip tarkim masiniu laiškų išsiuntimu).
Vienas iš tų įskiepių - Rails Engines.
Daugiau nebereikės rašyti to paties du kartus! Prižadu. Norite sužinoti kaip?
Jau rašiau apie MVC architektūrą bei užklausos apdorojimą. Dabar norėčiau paminėti kelis RoR karkaso MVC architektūros ypatumus.
Objektiškai RoR karkasas yra suskirstytas į du didelius paketus:
- ActionPack;
- ActiveRecord;
Ankstesnio straipsnio (MVC [I] - Architektūra) tęsinys.
MVC paprastai turi daug atmainų tačiau esminis procesas vyksta sekančiai:
- Vartotojas atlieka kažkokį veiksmą susijusį su GUI (pvz paspaudžia mygtuką);
- Kontroleris apdoroja šį veiksmą pagal nurodytą įvykių apdorojimo elementą (mol event handler);
- Kontroleris iškviečia modelį, kuris, turbūt, atlieka įvairius veiksmus su duomenimis (atnaujina registracijos informaciją, įdeda prekę į krepšelį ir pan.)
- Atitinkamas “vaizdas” naudojasi modeliu, kad sugeneruotu atitinkamai naują vartotojo sąsają (atvaizduoja naują registracijos informaciją, išmeta pranešimą apie į krepšelį įdėtą prekę).
- Vartotojo sąsaja laukia tolimesnių veiksmų iš vartotojo.
Pirmuose RoR dokumentacijos sakiniuose teigiama, kad šis karkasas yra sukurtas pagal MVC architektūros modelį. Iš tiesų tai yra struktūrinis šablonas (mol. design pattern) pagal kurio architektūrą yra kuriamos paprastos programos, o ne web aplikacijos.
Skaityti toliau »