Domanda

Sto valutando i binari come framework per un nuovo progetto web. La mia unica preoccupazione è che per quanto ne so, Rails sia stato costruito con una forte inclinazione verso applicazioni CRUD e SQL.

Lo stile di architettura della mia applicazione sarà guidato dal dominio con un database NoSQL, quasi l'opposto delle radici delle rotaie. Ho anche l'impressione che le app Rails siano fortemente legate a un singolo database.

Ho visto un po 'di lavoro cercare di rendere Rails NoSQL-friendly, specialmente DataMapper 2, sembra molto interessante (e richiedere molto tempo), ma mi chiedo se l'attuale architettura Rails sia adatta per i progetti DDD (record anti-attivo).

Idealmente vorrei usare i binari per la sua maturità, la comunità e il rubino. Ma ho anche visto molti progetti maturi che avevano problemi per abbracciare nuovi stili di programmazione che non erano considerati fin dall'inizio.

Inoltre sto prendendo in considerazione un micro-framework come Sinatra che dovrebbe darmi la flessibilità di usare il mio stile di architettura. L'unico aspetto negativo di ciò preferirei un framework che si prende cura del maggior numero possibile di cose (nessuna lunga esperienza con lo sviluppo web).

È stato utile?

Soluzione

Sembra che Sinatra sia la soluzione migliore.

Alcuni dei concetti che hai descritto non lo sono, tradizionalmente, fuori dalla scatola Pertanto, per parlare per un'applicazione Rails e la configurazione di più database NOSQL con DataMapper ti darà alcuni mal di testa.

Con Sinatra, ottieni il meglio da entrambi i mondi. È un linguaggio specifico del dominio, non un framework, quindi puoi personalizzarlo esattamente nel modo in cui ne hai bisogno. Sebbene ci vorrà un po 'di lavoro per configurare, avere il controllo completo sul framework utilizzato dalla tua applicazione è molto soddisfacente. Costruiscilo da zero.

Non fraintendetemi, adoro i binari, ma nel momento in cui devo iniziare a giocare con i suoi interni, stai meglio a costruirlo da solo con Sinatra.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top