mercoledì 12 settembre 2012

Le interfacce sono cosí importanti?

Le interfacce sono i contratti che definiscono come un oggetto interagisce con gli altri oggetti presenti nel vostro sistema.


Quindi è sempre consigliabile sviluppare il vostro codice partendo dalle interfacce.



Infatti, se come regola iniziate lo sviluppo del vostro codice partendo dai test, potete implementare il comportamento di una classe senza necessariamente definire il codice per tutte le entità che interagiscono con l'oggetto che state progettando.



Quando definire le interfacce non è vantaggioso?



Non ha senso definire una interfaccia quando:

  • non scrivete un test che verifica l'interazione tra oggetti diversi;
  • non avete la necessità di definire specializzazioni diverse che implementano la stessa interfaccia;
  • usate dei value object;
In generale vi consiglio sempre di scrivere i test e di conseguenza la definizione delle interfacce diventa "naturale".