Ho letto un sacco di odio diffuso sugli ORM e sono sinceramente interessato a scoprire se esiste un modo migliore di fare le cose.
Sfortunatamente, mentre ci sono tonnellate di libri, post di blog e articoli sulla modellazione e sulla creazione di app che utilizzano vari ORM, nessuno esiste per l'approccio non-ORM.
Esistono webapp open source di medie e grandi dimensioni create senza un ORM? Niente batte leggendo il vero codice sorgente.
In alternativa, ecco cosa sto cercando di scoprire:
- solo perché non stai usando un ORM, varie associazioni tra tabelle non scompaiono. Come li modellerai nella tua app?
- Per cose semplici come il caricamento di una riga dato il PK, quanta piastra è necessario scrivere? Ci sono librerie che alleviano questo dolore?
- Per cose semplici come il caricamento 1: molte associazioni, quanto è necessaria la piastra di riscaldamento?
- Che aspetto ha il codice quando esponi un'API JSON nella tua app web? L'API JSON avrà intrinsecamente delle associazioni al suo interno (ad esempio, l'utente JSON avrà dei post al suo interno, che avranno dei commenti al suo interno). In che modo questo è materialmente diverso da ciò che fa un ORM?
- Che aspetto ha l'API di basso livello, che implementa varie logiche di business? Se non oggetti, quali argomenti prende questa API? Cosa restituisce?
La mia esposizione agli ORM è solo tramite Rails / ActiveRecord, e non riesco a visualizzare me stesso scrivendo un'applicazione con DB backed senza duplicare tutto lo standard che Rails si prende cura di me. Potrebbe essere che ibernare o nibernare sono animali diversi e il record attivo va bene. Il che avrebbe in realtà un senso e porre la questione a riposo. Almeno per me.