Sono il progettista di un'interfaccia IModel
, che verrà utilizzata dall'implementatore di un controller (MVC). L'interfaccia contiene funcA()
.
Un altro programmatore deve implementare una classe specifica per IModel
.
Voglio dirigere l'implementazione di funcA()
per utilizzare un'altra funzione, funcB()
. Ciò impone che alcune funzionalità della classe del modello specifico siano trasparenti. Ad esempio, l'interfaccia contiene openFile()
, ma la classe specifica deve contenere la funzionalità trasparente di crittografia del file.
Cosa c'è di meglio?
- Definizione di due interfacce: I1 per il lato controller e un'altra, I2, per coloro che implementano la classe del modello, dove I2 estende I1.
- La mia implementazione di una classe astratta come
AbsModel
che implementaImodel
e contiene funzioni astratte.