Nota: questo è della primavera del 2008, quindi antico in terra di rotaie.
(Il titolo di questo probabilmente non è buono come dovrebbe essere, non riesco a pensarne uno migliore)
Sto per rivisitare un'idea di avvio e la mia piattaforma preferita è Ruby on Rails. Recentemente ho anche iniziato a rileggere il libro "Enterprise Rails" che suggerisce che tu non segui le convenzioni di Rails ma invece separi i tuoi livelli in componenti "fisici" e "logici". Questo è l'unico libro che devo ancora vedere dove viene espressa questa opinione; ogni altro libro di Rails sembra semplicemente seguire il mantra della "convenzione sulla configurazione". In breve, i suggerimenti del libro dividono la tua app / cartella nel seguente:
- app / models / physical (utilizzato per i file di modello .rb effettivi)
- app / models / logical (utilizzato per le API dei servizi Web credo)
e fai lo stesso con i tuoi controller e altre aree dell'app. Il libro consiglia inoltre di non utilizzare le migrazioni del database, ma di utilizzare script SQL non elaborati (e in seguito utilizza le viste e le funzioni SQL) in una cartella separata che non rispetta la norma Rails.
La mia domanda è se dovrei preoccuparmi di queste cose se sto appena iniziando a sviluppare la mia applicazione. Ovviamente il libro consiglia di evitare i possibili problemi lungo la strada, e lo sviluppatore .NET in me vuole essere d'accordo, ma lo sviluppatore di Rails in me (ancora un bambino) mi sta dicendo di seguire il "Rails Way" 100% dal momento che sto ancora imparando il framework e il linguaggio Ruby. Mi chiedo quante app di Rails di successo seguano solo la norma con tutti i modelli in app / modelli, tutti i controller in app / controller senza alcuna ulteriore segregazione e quanti fanno un qualche tipo di architettura "enterprise-y"?