Da una sintetica segnalazione di
Six Revisions parte questa disamina di alcuni dei
punti di forza che il framework Ruby on Rails presenta, con qualche approfondimento sulla relativa documentazione. Si comincia parlando di
prototipi, ovvero modalità di progettazione grazie alle quali si perde meno tempo ad aggirare i vincoli delle specifiche, guadagnandone invece per la soluzione dei problemi che si pone il programma in quanto tale.
La strada che Ruby on Rails segue per raggiungere lo scopo è nota come Convention over Configuration o Coding by convention,
e permette di seguire delle convenzioni molto precise senza doversi occupare di file di configurazione e altre amenità per così dire burocratiche. Succede, ad esempio, che se abbiamo una classe modello fantasiosamente chiamata
post, il database corrispondente avrà una tabella chiamata
posts, e la relativa classe
controller si chiamerà a sua volta
PostsController; tutto questo potrà sembrare poco creativo, ma presenta diversi vantaggi e ha una certa efficacia.
Vedere questo meccanismo al lavoro è relativamente facile, e abbastanza immediato. All'invocazione del comando
rails nomeApp, erede di
create-app nomeApp viene creata una struttura di directory indipendente dal sistema operativo e organizzata secondo criteri logici; tra le directory o cartelle principali, ci sono quelle dell'applicazione (
app), delle classi controller e model (
app/controllers e
app/models), dei
template (
app/views). Con l'applicazione viene creata anche la struttura di database, coerente con quella dell'applicazione nel suo insieme.
Il cosiddetto
scaffolding, termine che corrisponde più o meno alla nostrana
impalcatura, costituisce
una comoda scorciatoia per creare molto velocemente un prototipo funzionante di applicazione anche non banale, ma bisogna fare attenzione a non fidarsi ciecamente di questo strumento, che è bene conoscere un po' meglio; il materiale non manca, e si può partire da
Tutorials Point, oppure dalla
documentazione ufficiale scaricata insieme a tutto il resto del programma. Anche la consultazione dell'
API può fornire indicazioni generali utili in materia.