Negli ultimi due giorni mi sono sparato i primi 14 capitoli di “Agile Web development with Rails“, arrivato mercoledì a tempo di record dall’Inghilterra (con Amazon, naturalmente), e dopo aver ricostruito (sì: copiato riga per riga) l’applicazione di esempio (una semplice libreria online), posso dare un primissimo giudizio al tutto, anche se sto ancora rileggendo il codice scritto di corsa in due pomeriggi, principalmente blind write, per capire che cosa è successo.
Direi, comunque, che l’impressione è finora positiva: da un punto di vista di ingegneria del software, sono estremamente felice della forzata separazione MVC, così come delle facilitazioni per il testing: le user stories, in particolare, sono veramente spettacolari (lo unit test o il functional test non è così diverso da JUnit (ovviamente, essendo la base di partenza la stessa), quindi cose che avevo già visto (ed accuratamente evitato) fino ad oggi); la possibilità infatti di definire un percorso di navigazione di test, per verificare se effettivamente questo viene rispettato, è sicuramente molto utile, specie tenendo conto che siamo in un contesto Agile, quindi se non si scrivono test sicuramente si rischia di rendere il tutto immanutenibile (neologismo?).
Per il resto, non posso che confrontarlo con PHP, unico altro linguaggio con cui ho scritto siti Web (se escludiamo una breve parentesi con J2EE, ma troppo breve per essere rilevante): alcune cose sono secondo me più semplici, mi vien da dire la funzione h() per fare escaping di schifo, in PHP non mi ricordo mai quale delle due/tre funzioni serve allo scopo; anche la scrittura di XML (RSS) è decisamente carina, così come altri particolari che non sono comunque mai troppo lontani da PHP stesso (in cui non ho mai usato un framework, peraltro, quindi…).
Sicuramente una killer feature è la possibilità di ottenere un form AJAX con cinque righe di codice, ed io avevo finora solo visto applicazioni AJAX e temevo vivamente il momento in cui avrei dovuto tentare di scrivere io del codice, ma mi devo ricredere. In particolare, la possibilità di scrivere un Javascript in Ruby è magnifica (oltre che un po’ un ossimoro)…
Ora devo tornare ai miei esami, finita la sessione dovrei scrivere un sito in autonomia, per mettere effettivamente le mani nel framework come si deve; per il momento, comunque, direi che lo promuovo a pieni voti.
hooray 😉
Vedo che il POuL sta passando lentamente al lato oscuro 😀
@Simone: resto un Javista convinto eh, ma so apprezzare anche il resto 😉