Design Pattern for Internal Builder

2

C'è un oggetto che è molto complicato da costruire e molti algoritmi necessari per capire come dovrebbe essere creato (per la tua curiosità è un oggetto che rappresenta e disegna il fascio di note nella notazione musicale).

L'oggetto ha un ratto di logica interna che voglio, almeno in parte, esternalizzare in una sorta di oggetto costruttore.

Tuttavia ho trovato che l'oggetto del builder aveva bisogno di un accesso eccessivo ai componenti interni dell'oggetto che stava costruendo. Quindi ho trovato un approccio diverso. L'oggetto 'builder' sarà invece una rappresentazione della complessa cosa del mondo reale che l'oggetto 'costruito' rappresenterà, ma l'oggetto 'costruito' si costruirà ancora prendendo l'oggetto 'builder' come input per il costruttore. p>

Non penso che questo sia esattamente un Pattern Builder GOF. Esiste uno schema di progettazione che corrisponde più strettamente alla mia proposta? Mi piacerebbe cercare su di esso se c'è.

Nel caso in cui la descrizione di cui sopra non sia chiara, qui c'è snippet che mostra cosa intendo.

class ComplexBuildingInstructionsIntf
{
public:
    virtual ~ComplexBuildingInstructionsIntf() {}
    virtual int getLots() const = 0;
    virtual int getComplicated() const = 0;
    virtual int getStuff() const = 0;
};

class ComplexObject
{
    ComplexObject(const ComplexBuildingInstructionsIntf& inInstructions);
};
    
posta Matthew James Briggs 15.11.2016 - 17:38
fonte

0 risposte

Leggi altre domande sui tag