Mettere insieme l'ereditarietà di Data Mappers e Domain Objects

0

Attualmente, ho un sistema con un Data Mapper e più oggetti di dominio che ereditano dalla stessa classe, diciamo B e C che ereditano dalla classe astratta A.

Per recuperare i dati, ho bisogno di passare un parametro all'interfaccia dati (getObject ('a'), getObject ('b')), in base ai dati restituiti per la classe B o la classe C. Quindi, il Data Mapper utilizza una classe Factory per creare l'oggetto corretto in base ad alcuni parametri (provenienti dai dati stessi).

La classe B e la classe C differiscono solo nell'implementazione di un metodo, il resto è ereditato dalla classe A.

Ho qualche dubbio su questo, sembra imperfetto ma non riesco a capire un modo migliore di farlo. I punti sono:

  1. L'ereditarietà è un buon metodo per implementare entità diverse che differiscono nel concetto ma solo in misura minima?
  2. La classe factory è un buon modo per restituire l'oggetto dominio corretto?
  3. Il consumo del data mapper con un parametro sembra sbagliato, c'è un modo migliore per farlo? Sarebbe meglio l'uso dell'astrazione?

Spero di averlo spiegato abbastanza chiaramente, altrimenti sarei felice di chiarirlo.

    
posta milo5b 24.02.2014 - 22:54
fonte

0 risposte

Leggi altre domande sui tag