Scrittura di un wrapper di database non monolitico

3

Ho un database SQL su cui memorizzo e da cui ho letto diversi oggetti nel mio codice C ++.

Ho scritto un wrapper di database single che gestisce tutte le letture e le scritture sul DB.

Ovviamente questa classe è diventata troppo grande. Potrei creare un wrapper Database per ogni oggetto business, ma poi devo istanziare tutte queste diverse classi wrapper.

Dal momento che questo mi sembra una situazione piuttosto generica, mi chiedo quale sia il modo in cui il libro di testo avvolge un database?

    
posta user695652 20.06.2016 - 16:48
fonte

1 risposta

1

Devi avere la stessa quantità di codice, indipendentemente dal fatto che risieda in un'unica grande classe o in più classi più piccole!

Un ORM può aiutarti a scrivere questo codice, ma se stiamo parlando dell'organizzazione del repository DB di livello superiore per i tuoi oggetti di business, non hai molta scelta. È facile creare molte classi per gestire le transazioni DB tra oggetti business, raggruppando insieme gli elementi dello schema e creando una classe per ciascuno (ad esempio uno per i clienti, uno per Stock o qualsiasi altro sistema funzioni).

Una volta la cosa che è utile è la capacità di dividere i tuoi oggetti di business in sezioni orizzontali e mantenerli completamente separati (cioè un'architettura di microservizi), quindi tenendo a mente ciò potrebbe rendere più facile la decisione di quali aree DB dividere in classi più piccole .

    
risposta data 20.06.2016 - 17:19
fonte

Leggi altre domande sui tag