Fino ad ora, sono stato un grande fan del modello MVC per lo sviluppo di applicazioni Web. Per il web, ho sviluppato principalmente in PHP (con i framework Kohana e CodeIgniter) e Ruby (RoR).
Mentre le mie applicazioni diventano più pesanti sul lato Ajax (app a pagina singola, ecc.) Ho notato che non posso fare a meno di tradire i concetti basilari di MVC: Javascript sta facendo la maggior parte dei lavori; chiamare i controller solo per chiedere visualizzazioni o più codice js / json sembra sbagliato.
Dopo aver cercato di mantenere tutti i processi di routing nei controller, ora l'ho sostanzialmente diviso tra loro e Javascript (ovvero, dal PoV del framework, parte delle visualizzazioni). Quando si richiede json, la sovversione MVC sembra ancora più ovvia: il codice js che fa la richiesta è il controller; il controller del framework agisce semplicemente come proxy per i dati del modello, ciò che in realtà sto chiedendo.
Quindi, cosa dovrei esaminare?
Stavo pensando ad applicazioni pure-javascript, ad esempio con backbone.js e un database basato su documenti, json-spitting (couchDB) come backend, ma adoro i miei database relazionali.
Un'altra opzione sarebbe la seguente: farei semplicemente "modelli indirizzati" in PHP / ruby / go / whatnot. Analizzeranno la richiesta, chiameranno il db, restituiranno un po 'di json.
Questo approccio mi sembra interessante ma manca di qualsiasi documentazione sostanziale o analisi accademica, quindi ho un po 'paura del salto.
Idee?