Design Patterns in Delphi [chiuso]

2

Delphi ha alcuni problemi nell'implementare alcuni schemi di progettazione perché alcune funzionalità mancano, come l'ereditarietà multipla e non le classi pure astratte.

Esistono buone risorse o "Pattern di adattamento" per convertire alcuni o tutti i Pattern di progettazione nel book GoF, nelle applicazioni Delphi?

    
posta Peter Turner 04.02.2011 - 16:25
fonte

3 risposte

3

Una pura classe astratta è solo un'interfaccia in Delphi. E poiché Delphi consente a una classe di implementare il maggior numero possibile di interfacce, questo dovrebbe davvero eliminare il peggiore onere.

    
risposta data 04.02.2011 - 18:12
fonte
2

Il VCL è letteralmente pieno di implementazioni di pattern, molti dei quali sono usciti direttamente dal libro GoF stesso.

Penso che un problema che molte persone hanno nell'uso di Delphi è che Delphi consente a una classe con metodi astratti di essere compilata e utilizzata in fase di esecuzione purché i metodi astratti non vengano chiamati. L'unica cosa che è puramente astratta sono le interfacce. Tutto il resto necessario per l'ereditarietà delle classi e il supporto di più interfacce funziona con Delphi, quindi non vedo davvero come avresti difficoltà a implementare QUALSIASI Pattern GoF. Non ho mai avuto alcuna difficoltà nei 14 anni che uso la lingua.

Per quanto riguarda l'ereditarietà multipla, che cosa ha a che fare con i pattern? L'ereditarietà multipla è piena di problemi concettualmente, in particolare se si sta tentando di implementare un discendente di due classi che presentano interfacce in cui esistono metodi identici con implementazioni leggermente differenti. Quale verrebbe utilizzato e come sceglieresti? Le interfacce risolvono questo problema in modo molto elegante in quanto è possibile utilizzare molte interfacce in un'implementazione a classe singola e a diversi livelli dell'ascendenza di una classe.

Se hai problemi nell'implementare modelli specifici, forse una domanda su ProgrammersSE con qualche codice di esempio ti aiuterà a capire meglio come superare un particolare problema in Delphi. Sono sicuro che farebbero grandi domande.

Saluti,

    
risposta data 24.01.2012 - 08:11
fonte
-4

I modelli di progettazione presentati nel libro GoF sono soluzioni molto pesanti. Li considererei sopra l'ingegneria in molti casi. Suggerirei di implementare i modelli usando strutture di classe molto più semplici.

Penso che sia la complessità delle strutture che stai cercando di ricreare, piuttosto che i modelli stessi, che ti stanno causando problemi.

    
risposta data 24.01.2012 - 06:21
fonte

Leggi altre domande sui tag