Programovanie

RadRails IDE urýchľuje vývoj webových aplikácií

Rámec pre vývoj webových aplikácií, Ruby on Rails využíva objektovo orientovaný jazyk Ruby a vzor model-pohľad-radič, ktorý udržuje jednotlivé časti funkčnosti v aplikácii oddelené a umožňuje im spolupracovať ako integrovaný celok. Mnoho vývojárov považuje tento program za príjemnejší spôsob vytvárania webových aplikácií ako PHP, ktorý spája všetky funkcie dohromady do jedného súboru. Ďalším lákadlom Rails je jeho integrovaná podpora AJAX.

RadRails, bezplatný open source projekt, je IDE pre rámec Ruby on Rails. Cieľom projektu je „poskytnúť vývojárom Rails všetko potrebné na vývoj, správu, testovanie a nasadenie ich aplikácií,“ uvádza web RadRails.

RadRails 0.7, ktorý bol vydaný koncom júla 2006, vedie dlhú cestu k dosiahnutiu týchto cieľov projektu. Aplikácie Rails obsahujú nepreberné množstvo priečinkov a súborov: čerstvo vygenerovaný prázdny projekt Rails má 12 podadresárov. Ovládače napísané v Ruby sa spárujú so zobrazeniami napísanými v RHTML (HTML s vloženým kódom servera Ruby). A vďaka jednej kombinácii klávesov v RadRails je prechádzanie z ovládača na pohľad a späť takmer bez námahy.

Programovanie konvenčných koľajníc núti vývojára prejsť z editora na konzolu na webový prehliadač a z úpravy jedného súboru na úpravy iného súboru. RadRails efektívne presúva väčšinu tejto aktivity do jedného pohodlného IDE na záložkách.

RadRails samozrejme nie je jediný spôsob vývoja aplikácií Rails. Niektoré z týchto súťaží sú komerčné: TextMate v systéme Mac OS X je editor, ktorý podporuje 50 programovacích jazykov a dodáva sa so zvýraznením a makrami v Ruby on Rails; je populárny medzi vývojármi Mac Rails.

Ďalším komerčným konkurentom, Komodo, je IDE pre dynamické jazyky, ktoré beží na systémoch Linux, Mac OS X, Solaris a Windows. Komodo je jedným z mála IDE, ktoré dokáže ladiť aplikáciu Ruby on Rails, ale zistil som, že jeho ladenie je také pomalé, že ho používam len zriedka. SlickEdit je schopný a citlivý multiplatformový viacjazyčný editor kódov, ktorý obsahuje dobrú podporu Ruby.

RadRails má tiež svoj podiel na voľnej súťaži. Ruby sa dodáva so softvérom SciTE, bezplatným editorom, ktorý podporuje mnoho programovacích jazykov, a FreeRIDE, bezplatným multiplatformovým Ruby IDE napísaným v Ruby. FreeRIDE bude nakoniec mať funkciu refaktoringu. A samozrejme, takmer každá vývojová platforma má bezplatné verzie vi a emacs.

Dostať sa na správnu cestu

RadRails je doplnok Eclipse RCP. Samostatná verzia, ktorá obsahuje potrebné časti aplikácie Eclipse, má veľkosť 45 MB. Sada Eclipse 3.2 SDK má veľkosť 120 MB, takže si môžete radšej stiahnuť samostatný RadRails, pokiaľ nepotrebujete ďalšie perspektívy sady Eclipse SDK. Samostatnú verziu RadRails 0.7 pre Windows som otestoval na Windows XP SP2 s Java 1.5, Ruby 1.8.4 a Rails 1.1.4.

Hlavným účelom RadRails je integrácia vývoja Rails, ktorá je úspešná. V rámci RadRails z pohľadu Rails je možné vygenerovať novú aplikáciu Rails a webový server; konfigurovať svoje databázy; generovať radiče a modely; upravovať modely, radiče a zobrazenia; a prehľadajte web aplikácie.

Rails Navigator a obálky mnohých generátorov Rails a zariadení Rake pomáhajú efektívne riadiť projekt. (Rake je pomôcka na vytváranie make-upov založená na Ruby.) Editori RadRails môžu zvýrazňovať syntax a generovať primitívne kódy; pre dôkladnejšie generovanie kódu budete chcieť spustiť generátory Rails.

Z hľadiska údajov je možné prezerať databázy projektu a vykonávať dotazy SQL. RadRails chýba nástroj na tvorbu dotazov SQL; môžete buď napísať svoje vlastné skripty SQL, alebo použiť iný nástroj na tvorbu dotazov.

Monitorovanie protokolových súborov Rails je odporúčaný spôsob ladenia aplikácií Rails. RadRails môže spustiť obslužný program chvost na zadaných súboroch protokolu a smerovať výstup do okien konzoly, ktoré spravuje. RadRails však nemôže nastaviť body zlomu v kóde Ruby na ladenie.

Ruby on Rails podporuje testovanie jednotiek, funkcií a integrácie, všetko automatizované pomocou skriptov Rake. RadRails môže tieto testy používať priamo alebo ich riadiť z vlastného testovacieho rozhrania, ktoré vytvára pekný strom na zobrazenie výsledkov. RadRails 0.7 predstavuje nové zariadenie AutoTest, ktoré dokáže automaticky spustiť testy spojené so súborom zakaždým, keď je uložený. Môj jediný problém s testovacím zariadením RadRails je ten, že sa mi jeho spustenie na pracovnej stanici Pentium 4 s frekvenciou 3,2 GHz a 1 GB pamäte RAM zdá pomalé, možno preto, že namiesto testovacieho zväzku Rake používa vzdialený testovací beh Ruby.

Jednou z mantier prvého vývoja je „červená, zelená, refaktor“. RadRails podporuje červený (zápis testu, ktorý zlyhá) a zelený (zápis kódu na vykonanie testu) celkom dobre, ale núti vývojára refaktorovať ručne. Našťastie štruktúra aplikácií Rails zvyčajne pomáha udržiavať kód správne zapracovaný.

RadRails, rovnako ako Komodo a SlickEdit, má svoje vlastné testovacie zariadenie pre regulárne výrazy. Na rozdiel od Komodo a SlickEdit nedokáže zalomiť svoj displej. Musel som napríklad posúvať úplne doprava, aby som prečítal koniec druhého komentára (ako je zvýraznený na obrázku vľavo), a požiadať programátora tohto ovládača, používateľa TextMate, aby sa v budúcnosti vyhýbal dlhým komentárom.

RadRails sa integruje do systémov riadenia verzií CVS a Subversion. Nie je integrovateľný s Perforce ani so systémami riadenia verzií, ktoré používajú konvenciu rozhrania Windows SCC.

Priestor pre rast

Najvýraznejšou slabinou RadRails 0.7 je riedka dokumentácia, ktorá je naplánovaná na dokončenie verzie 1.0. Dve krátke ukážkové videá, ktoré sa nachádzajú na stránkach RadRails, môžu vývojárom pomôcť pri začiatkoch, ale potom ste do značnej miery sami. Tiež by som bol rád, keby sa RadRails zlepšovali podľa stupňa obtiažnosti, zalamovania slov, automatického formátovania kódu, integrácie riadenia zdrojového kódu, ladenia a refaktoringu.

Celkovo je RadRails 0.7 na dobrej ceste „poskytnúť vývojárom Rails všetko, čo potrebujú na vývoj, správu, testovanie a nasadenie ich aplikácií.“ Vzhľadom na to, že sťahovanie je zadarmo, mali by ho všetci seriózni vývojári Rails zvážiť pre svoje sady nástrojov.

Výsledková listina Výkon (10.0%) Jednoduchosť použitia (20.0%) Integrácia (20.0%) Vlastnosti (40.0%) Hodnota (10.0%) Celkové skóre (100%)
RadRails 0.77.07.09.08.010.0 8.1
$config[zx-auto] not found$config[zx-overlay] not found