Ruby Diary #02: Quale editor per Ruby e Rails?

Venerdì 12 Ottobre 2007 - 09:45

di Simone Carletti

Ruby

La scelta dell’editor è probabilmente una delle primissime attività con le quali ci si scontra quando si desidera apprendere un nuovo linguaggio. Qualcuno potrebbe anche azzardare dicendo che, a parità di scelte, l’editor potrebbe essere in grado di veicolare la scelta di un programmatore in una direzione piuttosto che in un’altra.

Come per la maggior parte dei programmatori, il mio caso non è stato diverso, così, deciso a cominciare a scrivere qualcosa in Ruby, il primo passo è stata la scelta di un editor. L’offerta non è così ampia come per altri linguaggi (vedi PHP o Java). Non esiste un vero e proprio editor per Ruby (ben felice di essere smentito) ma nella maggior parte dei casi si tratta di editori esistenti (in genere Java) customizzati con plugin per Ruby/Rails.

Sono abbastanza puntiglioso nella scelta di questi strumenti. Sebbene qualche folle continui a sostenere che svilupperebbe la nuova versione di Amazon munito esclusivamente di VI o Windows Notepad, per quanto mi riguarda l’editor è un aspetto fondamentale. Nel mio lavoro spesso creo decine e decine di librerie, riutilizzo componenti sviluppati in precedenza e gestisco multipli progetti in contemporanea, interagendo con SVN e server FTP. Più l’editor mi consente di automatizzare processi e razionalizzare le attività, più risparmio tempo e riesco ad essere produttivo concentrando il mio tempo nello sviluppo.

Dopo oltre un paio di mesi di test, ecco le mie personali conclusioni. Al momento tre editor si contendono il primato, con un primo e secondo posto abbastanza altalenante.

Eclipse RadRails

screenshot

Se programmate da molto tempo senz’altro, per un motivo o per l’altro, questo nome non vi sarà nuovo. Se poi avete avuto esperienze con Java, quasi sicuramente ne avrete sentito parlare più volte. Eclipse è uno storico editor che, sebbene sia largamente diffuso tra gli sviluppatori Java, offre un quantitativo di plugin impossibile da contare che potrebbero anche permettervi di programmarvi la vostra personale macchinetta del caffè.

Eclipse è molto più che un editor, è una piattaforma completa e matura, che consente di integrare comodamente plugin personalizzati per costruire sia nuovi editor sia mini applicazioni complesse come Aptana, client SVN, interfacce di interazione con Issue Tracker.

Eclipse nativamente non integra alcun supporto particolare per Ruby o Rails. Tuttavia è disponibile RadRails, un plugin sviluppato dagli stessi programmatori di Aptana.

RadRails offre sia la prospettiva Rails sia quella Ruby. Integra la colorazione della sintassi, riferimenti incrociati tra uso delle funzioni e loro dichiarazione, pannelli ed helper per accedere in automatico ai task di Rake per Rails. Il supporto è completo sia per la creazione di nuovi progetti Rails sia per l’importazione di progetti esistenti.

Tra i 3 editor a confronto dispone dell’interfaccia più curata ed accattivamente, ma purtroppo non conta solo l’abito.

RadRails attualmente si piazza al terzo posto a causa di un sistema di autocompletamento praticamente inesistente ed una pessima integrazione della documentazione rdoc, sia per quanto riguarda la scrittura dei commenti sia per il richiamo delle informazioni sulle funzioni in fase di scrittura del codice.

Se il vostro intento è programmare esclusivamente in Ruby allora Eclipse potrebbe non essere una scelta opportuna. Eclipse è gratuito, open source e scritto in Java. Questo lo rende disponibile per diverse piattaforme, inclusi Windows, Linux e Mac Os X.

JetBrains Intellij Idea

rd02-intellij.gif

I programmatori professionisti (causa il prezzo proibitivo del prodotto che ne limita la diffusione in ambiti non business) che lo hanno provato difficilmente sono rimasti delusi da IntelliJ Idea.

Molte sono le somiglianze con Eclipse. Anche questo editor è essenzialmente rivolto a programmatori Java e come per Eclipse il supporto a Ruby e Rails è offerto sotto forma di plugin.

Sottile ma non banale differenza, il plugin non è sviluppato da terze parti ma è un progetto ufficialmente gestito dagli stessi sviluppatori dell’IDE.

A differenza di Eclipse, Idea offre un eccellente sistema di autocompletamento in grado di parsare in tempo reale le librerie all’interno del progetto offrendo suggerimenti contestuali e dettagli di ogni metodo, inclusa la classe di appartenenza e parametri accettati.

Come per Eclipse, anche questo editor integra comandi per interagire con Rake e progetti Rails. In aggiunta, nativamente integra diverse funzioni per importare ed esportare progetti da e verso Eclipse.

IntelliJ Idea è un IDE estremamente flessibile e dispone di una collezione di oltre 4000 plugin, compresa l’integrazione con client SVN e database. È sviluppato in Java, dunque multipiattaforma, ha un’interfaccia grafica estremamente piacevole e potrebbe tranquillamente occupare la mia personale prima posizione in classifica se il prezzo non fosse così proibitivo. La licenza personale costa circa $300 mentre quella business sfiora i $500!

NetBeans

rd02-netbeans.jpg

Il vincitore di questa personale classifica è NetBeans, un altro storico editor molto diffuso per i programmatori Java. Eh sì, anche questo terzo software è dedicato ai programmatori Java ma nella nuova versione, attualmente disponibile nella prima release beta, integra il supporto a Ruby così come a Rails.

Funzione più funzione meno, NetBeans è qualitativamente al pari di JetBrains. Tuttavia la sua interfaccia è meno elegante dal punto di vista stilistico e, personalmente parlando, più confusa in termini di organizzazione delle informazioni.

Punto di forza è il supporto avanzato a Rdoc ed al refactoring dei commenti. Il blog di Tor Norbye è senz’altro un eccellente spunto di partenza per valutare la qualità di NetBeans e Ruby.

In conclusione

Quanto sopra riportato è una breve e soprattutto personale panoramica sugli editor per Ruby. Esistono poi ulteriori alternative come Komodo o l’eccellente TextMate per Mac. Avete altro da suggerire?

Tags:

Categoria: Ruby | Permalink

Commenti

1

Io sono di parte e innamorato di TextMate, per cui non faccio testo. La maggior parte dei bundel di TM è fatta su Ruby, e le demo sul sito di ROR sono fatte su TM. C’è una motivazione. ;)

# - postato da caruso_g - 12 Ottobre 2007 - 10:42

2

Coda per Mac! Perché? C’è terminal integrato per eseguire i commandi di readline & ruby, supporto per ftp, instant preview.. ed è pure bello :)

# - postato da Piotr - 12 Ottobre 2007 - 10:49

3

Io ho portato agli esami un piccolo sito di e-commmerce in php scritto tutto utilizzando mcedit.. Oh….:D

# - postato da lloyd27 - 12 Ottobre 2007 - 13:43

4

beh se textmate è ottimo vim ci sta tutto :)
omnicompletion, snippet, file browser, syntax highlight, scriptabilità infinita.
Non mi considero folle perché vim non è vi :)

Altre possibilità:
non lo provo da tempo ma ArachnoRuby era il miglior ide che ci fosse fino a qualche tempo fa, con il miglior debugger integrato.

3rdrail sembra un buon prodotto, ma non l’ho mai provato.

Ruby in Steel è ruby su visual studio.

infine c’è il piccolo RoRed, che però è windows only, e io sviluppo solo su linux.

# - postato da riffraff - 12 Ottobre 2007 - 14:42

5

Non dimenticare il progetto DLTK (Dynamic Language Toolkit), progetto ufficiale di Eclipse 3.3 Europa, che permette di avere un editor per Ruby con grande caratteristiche per quanto riguarda refactoring e autocompletamento DLTK

# - postato da Matroska - 13 Ottobre 2007 - 09:46

6

Vi è un editor che secondo me è molto promettente si chiama e-texteditor. E’ molto simile per caratteristiche a Textmate per Mac. Per ora è sviluppato solo per Windows, vi sarà anche una versione per Linux.
sito

# - postato da mex23 - 14 Ottobre 2007 - 12:16

7

è lentino ad aprire…
e poi non fa molte cose che trovi, ad esempio, su ultraedit, che costa lo stesso.

# - postato da yQy - 15 Ottobre 2007 - 09:39

8

La scelta dell’editor è probabilmente una delle primissime attività con le quali ci si scontra quando si desidera apprendere un nuovo linguaggio.

secondo me no. Mi basta un qualsiasi editor che supporti la colorazione per quel linguaggio.

Preferisco concentrarmi sul nuovo linguaggio che perdermi tra le funzionalità dell’eclipse di turno.

Una volta entrato più in confidenza con il linguaggio, diciamo dopo avere pubblicato la prima applicazione, allora dedico un po’ di tempo alla scelta dell’editor.

Per ora uso gedit o vim.

# - postato da batdevis - 15 Ottobre 2007 - 22:36

9

Concordo sul fatto che è importante solo la colorazione e magari qualche autocomplete..

TextMate offre ciò e moooooltissimo altro ancora. TM a vita.

# - postato da Stefano - 14 Dicembre 2007 - 15:38

10

Commento in grave ritardo, ma lo devo dire:
voi che usate vim, ultraedit e simili lavorate come programmatori o scrivete un po’ di codice per divertimento?
Perché vorrei sapere come fate, con vim, a fare una pesante operazione di refactoring, per dirne una.

# - postato da alessandro - 11 Novembre 2008 - 13:02

Inserisci il tuo commento:





(puoi usare i seguenti tag HTML per formattare il testo -
a href, b, i, br/, p, strong, em, ul, ol, li, blockquote, pre):

 

Anteprima del commento