Skúsenosti s Ruby on Rails alebo nie všetko je také jednoduché ako vyzerá
Ruby a Ruby on Rails
Ruby je v súčasnosti populárny a podľa môjho názoru aj zaujímavý a jednoduchý jazyk, rozhodol som sa preto vyskúšať aj čoraz populárnejší webový framework Ruby on Rails . RoR oproti ostatným webovým frameworkom sľubuje hlavne rýchlosť vývoja a efektivitu, kedy veľkú časť kódu (ktorý sa v každom projekte opakuje) za programátora generujú skripty a on sa sústredí už len na dôležité veci.
Video s názvom Creating a weblog in 15 minutes sľubovalo niečo ako zautomatizovaný CakePHP dotiahnutý do dokonalosti, tak som sa pustil do tvorby svojej prvej RoR aplikácie podľa tohto návodu.
Prvá aplikácia a prvé problémy
Inštalácia Ruby ani RoR nie je žiaden problém, pomocou Gems ide všetko rýchlo a jednoducho, problém sa objavil až pri samotnej tvorbe aplikácie. RoR je v aktuálnej verzi 2.0.2 dosť odlišný od starších verzií, zmenil sa scaffolding aj paging, väčšina dostupných tutoriálov vrátane spomínaného videa teda nefunguje.
Pôvodný scaffolding aj paging je možné do RoR doplniť pomocou pluginov, objavia sa však ďalšie problémy, ktoré som už nemal chuť riešiť. Začal som teda radšej hľadať nejaký aktuálny tutoriál, keďže Ruby ako jazyk sa mi páči a RoR som preto chcel vyskúšať aj napriek počiatočným problémom.
Našťastie som našiel aj pár dobrých tutoriálov pre RoR 2.0 (napríklad tento alebo tento ) a RoR sa mi celkom zapáčilo, vývoj aplikácii (from scratch) v RoR sa mi oproti PHP zdá rýchlejší, takéto aplikácie však tvoria úplné minimum mojej práce, po oboznámení sa s RoR som ďalej potreboval nejaké vhodné CMS, ktorý by zvládlo všetko, čo potrebujem.
CMS pre Ruby on Rails
Pre RoR existuje relatívne málo CMS (oproti napríklad PHP), možno aj preto som nenašiel žiadne, ktoré by mi vyhovovalo. Skúšal som Radiant a Mephisto , výrazne mi však chýbala podpora internationalizácie (skoro všetky weby na ktorých pracujem sú viacjazyčné), vadila nízka prispôsobiteľnosť a absencia poriadnej dokumentácie.
Zhrnutie
Aj napriek počiatočným problémom hodnotím RoR veľmi pozitívne, skripty na generovanie modelov, pohľadov, kontrolérov, migráciu databázy a pod. sú naozaj silná vec, ktorá dokáže ušetriť dosť času. Problémom je absencia komplexného CMS, ktoré by umožňovalo tvorbu kompletných webov, na špecifickejšie projekty vytvárane od začiatku však určite uplatnenie nájde.