È un buon approccio quando nella progettazione del software le interazioni di classe sono descritte solo con interfacce? Se sì, dovrei usare sempre questo approccio?Progettazione software solo con interfacce?
Devo progettare una libreria di classi che dovrebbe avere un'elevata testabilità (io uso C#).
Questa libreria ha una facciata e una certa quantità di classi con interazioni diverse in background.
Nel caso di ottimizzazione di questa libreria per una buona testabilità, ho sostituito la maggior parte delle mie classi con interfacce.
E quando ho fatto questo, ho visto in un diagramma di connessione (diagramma di classe Visual Studio) solo le interfacce.
È normale la decisione del mio problema? o ci dovrebbe essere un altro approccio?
P/S: Forse è ben noto il modo in software-design ma non riesco a trovare qualche conferma nei libri che ho.
Il post è un po 'difficile da seguire e non uso C#. Ma se ti riferisci all'incapsulamento, allora questa è la migliore pratica in un ambiente OOP. –