RadRails IDE accelera lo sviluppo di app Web

Un framework per lo sviluppo di applicazioni Web, Ruby on Rails utilizza il linguaggio Ruby orientato agli oggetti e un pattern model-view-controller, che mantiene separati i vari blocchi di funzionalità nell'applicazione consentendo loro di lavorare insieme come un tutto integrato. Molti sviluppatori trovano questo un modo più congeniale per creare applicazioni Web rispetto a PHP, che raggruppa tutte le funzionalità in un unico file. Un'ulteriore attrazione di Rails è il suo supporto AJAX integrato.

RadRails, un progetto open source gratuito, è un IDE per il framework Ruby on Rails. L'obiettivo del progetto è "fornire agli sviluppatori Rails tutto ciò di cui hanno bisogno per sviluppare, gestire, testare e distribuire le loro applicazioni", secondo il sito Web di RadRails.

Rilasciato alla fine di luglio 2006, RadRails 0.7 fa molto per raggiungere gli obiettivi del progetto. Le applicazioni Rails includono una pletora di cartelle e file: un progetto Rails vuoto e appena generato ha 12 sottodirectory. I controller scritti in Ruby si accoppiano con le viste scritte in RHTML (HTML con codice del server Ruby incorporato). E una singola combinazione di tasti in RadRails rende il passaggio dal controller alla visualizzazione e viceversa quasi senza sforzo.

La codifica Rails convenzionale obbliga lo sviluppatore a passare dall'editor a una console a un browser Web e dalla modifica di un file alla modifica di un altro file. RadRails sposta efficacemente la maggior parte di questa attività in un comodo IDE a schede.

Ovviamente, RadRails non è l'unico modo per sviluppare app Rails. Alcuni dei suoi concorrenti sono commerciali: TextMate su Mac OS X è un editor che supporta 50 linguaggi di programmazione e viene fornito con l'evidenziazione e le macro di Ruby on Rails; è popolare tra gli sviluppatori di Mac Rails.

Un altro concorrente commerciale, Komodo, è un IDE per linguaggi dinamici che funziona su Linux, Mac OS X, Solaris e Windows. Komodo è uno dei pochi IDE in grado di eseguire il debug di un'applicazione Ruby on Rails, ma ho riscontrato che il suo debug è così lento che lo uso raramente. SlickEdit è un editor di codice multi-piattaforma e multilingua capace e reattivo che include un buon supporto per Ruby.

Anche RadRails ha la sua quota di libera concorrenza. Ruby viene fornito con SciTE, un editor gratuito che supporta molti linguaggi di programmazione, e FreeRIDE, un IDE Ruby multipiattaforma gratuito scritto in Ruby. FreeRIDE alla fine avrà funzionalità di refactoring. E, naturalmente, quasi tutte le piattaforme di sviluppo hanno versioni gratuite di vi ed emacs.

Andare in pista

RadRails è un plug-in RCP di Eclipse. La versione standalone, che include le parti necessarie per Eclipse, è un download di 45 MB. Eclipse 3.2 SDK è un download da 120 MB, quindi è meglio scaricare RadRails standalone a meno che non siano necessarie le altre prospettive nell'SDK Eclipse. Ho testato la versione Windows standalone di RadRails 0.7 su Windows XP SP2 con Java 1.5, Ruby 1.8.4 e Rails 1.1.4.

Lo scopo principale di RadRails è integrare lo sviluppo di Rails, e in questo ha successo. All'interno di RadRails nella prospettiva Rails, è possibile generare una nuova applicazione Rails e un nuovo server Web; configurare i suoi database; generare controller e modelli; modificare modelli, controller e visualizzazioni; e sfoglia il sito dell'applicazione.

Il Rails Navigator e i wrapper per i numerosi generatori di Rails e le strutture Rake aiutano a gestire il progetto in modo efficace. (Rake è un'utilità di make-like basata su Ruby.) Gli editor di RadRails possono evidenziare la sintassi e generare codice primitivo; per una generazione di codice più sostanziale, ti consigliamo di eseguire i generatori di Rails.

Nella prospettiva Dati, è possibile visualizzare i database del progetto ed eseguire query SQL. RadRails non dispone di un generatore di query SQL; puoi scrivere i tuoi script SQL o utilizzare un altro strumento di creazione di query.

Il monitoraggio dei file di registro di Rails è il modo consigliato per eseguire il debug delle applicazioni Rails. RadRails può eseguire l'utility tail su file di log specificati e instradare l'output nelle finestre della console che gestisce. RadRails non può, tuttavia, impostare punti di interruzione nel codice Ruby per il debug.

Ruby on Rails supporta test unitari, funzionali e di integrazione, tutti automatizzati utilizzando gli script Rake. RadRails può utilizzare questi test direttamente o guidarli dalla propria interfaccia di test, che costruisce un bel albero di visualizzazione dei risultati. RadRails 0.7 introduce una nuova funzionalità di AutoTest, che può eseguire automaticamente i test associati a un file ogni volta che viene salvato. Il mio unico problema con l'impianto di test RadRails è che sembra lento avviarsi sulla mia workstation Pentium 4 a 3,2 GHz con 1 GB di RAM, forse perché utilizza il runner di test remoto Ruby invece del cablaggio di prova Rake.

Uno dei mantra dello sviluppo test-first è "rosso, verde, refactoring". RadRails supporta i passaggi rosso (scrivi un test che fallisce) e verde (scrivi codice per far passare il test) abbastanza bene, ma costringe lo sviluppatore a refactoring manualmente. Fortunatamente, la struttura delle applicazioni Rails di solito aiuta a mantenere il codice ben suddiviso.

RadRails, come Komodo e SlickEdit, ha il proprio banco di prova per le espressioni regolari. A differenza di Komodo e SlickEdit, non può racchiudere a capo il suo display. Ad esempio, ho dovuto scorrere molto a destra per leggere la fine del secondo commento (come evidenziato nell'immagine a sinistra) e chiedere al programmatore di questo controller, un utente TextMate, di evitare commenti lunghi in futuro.

RadRails si integra con i sistemi di controllo delle versioni CVS e Subversion. Non si integra con Perforce o con i sistemi di controllo della versione che utilizzano la convenzione dell'interfaccia SCC di Windows.

Spazio per la crescita

La debolezza più evidente di RadRails 0.7 è la scarsa documentazione, che dovrebbe essere completata per la versione 1.0. Due brevi video dimostrativi trovati sul sito di RadRails possono aiutare gli sviluppatori a iniziare, ma dopo sei in gran parte da solo. Mi piacerebbe anche vedere RadRails migliorare, in ordine di grado di difficoltà, ritorno a capo automatico, formattazione automatica del codice, integrazione del controllo del codice sorgente, debug e refactoring.

Nel complesso, RadRails 0.7 è sulla buona strada scelta "per fornire agli sviluppatori Rails tutto ciò di cui hanno bisogno per sviluppare, gestire, testare e distribuire le loro applicazioni". Dato che è gratuito per il download, tutti gli sviluppatori seri di Rails dovrebbero prenderlo in considerazione per i loro toolkit.

Scorecard Prestazioni (10,0%) Facilità di utilizzo (20,0%) Integrazione (20,0%) Caratteristiche (40,0%) Valore (10,0%) Punteggio complessivo (100%)
RadRails 0.7 7.0 7.0 9.0 8.0 10.0 8.1