Come ogni anno, si è svolto ieri il linux Day, a Torino sono state scelte tre location:
Cascina Roccafranca , Biblioteca Shahrazad e Casa del Quartiere.
I Talk a cui ho assistito erano tutti alla Cascina Roccafranca, ma quello che mi ha colpito di più esponeva quella che sarà una delle possibili strada per un reale Web 2.0, ovvero dei siti fruibili e veloci anche su dispositivi come tablet e cellulari.
- Webapp HTML5 e JSON con Ruby on Rails 3.1
Talk sulla versione 3.1 del framework Rails, e sulle tecnologie web associate: HTML5, Javascript e JSON.
Relatore: Luigi Maselli
Il concetto dell'MVC è la separazione dei compiti tra i vari elementi, per poter ottenere del codice pulito e separato dalla parte di html e di interazione con l'utente: la famosa separazione fra la logica applicativa e l'interfaccia utente
- il model fornisce i modelli e i metodi per interagire con i dati;
- il view , che si occupa di visualizzarli e dell'interazione con gli utenti ;
- il controller che elabora gli input ricevuti dall'utente attraverso la view e li realizza 'dirigendo' gli altri due componenti
La parte interessante di questo framework, che usa tecniche di programmazione già sperimentate e affatto 'rivoluzionarie', come il suo utilizzo del Json come mezzo per portare solamente i dati modificati alla pagina html, senza dover ricaricare tutta la pagina, l'uso degli storage del browser del client , la libreria jQuery e quant'altro, è il fatto di avere racchiuso tutti questi strumenti in un unico modello di sviluppo.Il linguaggio usato è il Ruby, linguaggio completamente ad oggetti.
Altri aspetti positivi, la completa astrazione della richiesta al Database, che ne rende flessibile l'eventuale (per quanto sia improbabile un cambio della base dati in corsa :D ) sostituzione, e la sua modularità (non è obbligatorio installare tutto il framework per poter lavorare).
Insieme al framework viene fornito un miniserver web che è più che sufficiente per lo sviluppo e per piccoli carichi di lavoro . Gli altri Talk a cui ho assistito sono stati: