Programování

RadRails IDE urychluje vývoj webových aplikací

Rámec pro vývoj webových aplikací, Ruby on Rails používá objektově orientovaný jazyk Ruby a vzor model-pohled-řadič, který udržuje různé části funkcí v aplikaci oddělené a umožňuje jim spolupracovat jako integrovaný celek. Mnoho vývojářů považuje za příjemnější způsob vytváření webových aplikací než PHP, které spojuje všechny funkce dohromady do jednoho souboru. Další atrakcí Rails je jeho integrovaná podpora AJAX.

RadRails, bezplatný open source projekt, je IDE pro rámec Ruby on Rails. Cílem projektu je „poskytnout vývojářům Rails vše, co potřebují k vývoji, správě, testování a nasazení jejich aplikací,“ uvádí web RadRails.

Vydáno koncem července 2006, RadRails 0.7 jde dlouhou cestou k dosažení těchto cílů projektu. Aplikace Rails obsahují nepřeberné množství složek a souborů: čerstvě vygenerovaný, prázdný projekt Rails má 12 podadresářů. Řadiče napsané v Ruby se spárují se zobrazeními napsanými v RHTML (HTML s vloženým kódem serveru Ruby). A díky jediné kombinaci kláves v RadRails je otáčení z řadiče do pohledu a zpět téměř bez námahy.

Programování konvenčních kolejnic nutí vývojáře přepnout z editoru do konzoly na webový prohlížeč a z úpravy jednoho souboru na úpravy jiného souboru. RadRails efektivně přesouvá většinu této aktivity do jednoho pohodlného IDE s kartami.

RadRails je samozřejmě jen jediný způsob, jak vyvíjet aplikace Rails. Některá z jeho soutěží jsou komerční: TextMate pro Mac OS X je editor, který podporuje 50 programovacích jazyků a dodává se se zvýrazněním a makry Ruby on Rails; je populární mezi vývojáři Mac Rails.

Další komerční konkurent, Komodo, je IDE pro dynamické jazyky, které běží na Linuxu, Mac OS X, Solaris a Windows. Komodo je jedním z mála IDE, které mohou ladit aplikaci Ruby on Rails, ale našel jsem, že jeho ladění je tak pomalé, že ho zřídka používám. SlickEdit je schopný a citlivý multiplatformní vícejazyčný editor kódu, který zahrnuje dobrou podporu Ruby.

RadRails má také svůj podíl na volné soutěži. Ruby se dodává se SciTE, bezplatným editorem, který podporuje mnoho programovacích jazyků, a FreeRIDE, bezplatným multiplatformním Ruby IDE napsaným v Ruby. FreeRIDE bude nakonec mít funkci refaktoringu. A samozřejmě téměř každá vývojová platforma má bezplatné verze vi a emacs.

Dostat se na správnou cestu

RadRails je zásuvný modul Eclipse RCP. Samostatná verze, která obsahuje části, které potřebuje Eclipse, je 45 MB ke stažení. Sada Eclipse 3.2 SDK má stahování 120 MB, takže je lepší stáhnout si samostatný RadRails, pokud nepotřebujete další perspektivy sady Eclipse SDK. Testoval jsem samostatnou verzi RadRails 0.7 pro Windows na Windows XP SP2 s Java 1.5, Ruby 1.8.4 a Rails 1.1.4.

Hlavním účelem RadRails je integrovat vývoj Rails, a to je úspěšné. V RadRails v perspektivě Rails lze vygenerovat novou aplikaci Rails a webový server; konfigurovat své databáze; generovat řadiče a modely; upravovat modely, řadiče a pohledy; a procházejte web aplikace.

Rails Navigator a obaly pro mnoho generátorů Rails a zařízení Rake pomáhají efektivně řídit projekt. (Rake je nástroj podobný make-upu založený na Ruby.) Redaktoři RadRails mohou zvýrazňovat syntaxi a generovat primitivní kód; pro podstatnější generování kódu budete chtít spustit generátory Rails.

V perspektivě Data je možné zobrazit databáze projektu a provádět dotazy SQL. RadRails postrádá tvůrce dotazů SQL; můžete buď napsat vlastní skripty SQL, nebo použít jiný nástroj pro vytváření dotazů.

Monitorování souborů protokolu Rails je doporučený způsob ladění aplikací Rails. RadRails může spustit nástroj tail na zadaných souborech protokolu a směrovat výstup do oken konzoly, která spravuje. RadRails však nemůže nastavit body zlomu v kódu Ruby pro ladění.

Ruby on Rails podporuje testování jednotek, funkcí a integrace, vše automatizované pomocí skriptů Rake. RadRails může tyto testy používat přímo nebo je řídit z vlastního testovacího rozhraní, které vytváří pěkný strom zobrazení výsledků. RadRails 0.7 představuje nové zařízení AutoTest, které může automaticky spouštět testy spojené se souborem při každém jeho uložení. Mým jediným problémem s testovacím zařízením RadRails je, že se na mé pracovní stanici Pentium 4 s frekvencí 3,2 GHz s 1 GB RAM cítím pomalu, možná proto, že místo testovacího svazku Rake používá vzdáleného testovacího běžce Ruby.

Jednou z manter vývoje prvního testu je „červená, zelená, refaktor“. RadRails podporuje červený (zápis testu, který selže) a zelený (zápis kódu, aby byl test úspěšný) kroky celkem dobře, ale nutí vývojáře ručně refaktorovat. Naštěstí struktura aplikací Rails obvykle pomáhá udržovat kód dobře zapracovaný.

RadRails, stejně jako Komodo a SlickEdit, má své vlastní testovací zařízení pro regulární výrazy. Na rozdíl od Komodo a SlickEdit nemůže zalomit svůj displej. Například jsem musel posunout daleko doprava, abych přečetl konec druhého komentáře (jak je zvýrazněno na obrázku vlevo) a požádat programátora tohoto řadiče, uživatele TextMate, aby se v budoucnu vyhnul dlouhým komentářům.

RadRails se integruje s systémy řízení verzí CVS a Subversion. Neintegruje se s Perforce ani se systémy pro správu verzí, které používají konvenci rozhraní Windows SCC.

Prostor pro růst

Nejvýraznější slabinou RadRails 0.7 je řídká dokumentace, jejíž dokončení je naplánováno na vydání 1.0. Dvě krátká ukázková videa nalezená na webu RadRails mohou vývojářům pomoci začít, ale po tom jste do značné míry sami. Také bych rád viděl RadRails vylepšovat, v pořadí podle stupně obtížnosti, zalamování textu, automatického formátování kódu, integrace řízení zdrojového kódu, ladění a refaktoringu.

RadRails 0.7 je celkově na své zvolené cestě „poskytnout vývojářům Rails vše, co potřebují k vývoji, správě, testování a nasazení jejich aplikací.“ Vzhledem k tomu, že je stahování zdarma, měli by to všichni seriózní vývojáři Rails zvážit pro své sady nástrojů.

Scorecard Výkon (10.0%) Snadnost použití (20.0%) Integrace (20.0%) Funkce (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