Ho difficoltà ad applicare la linea guida "programmazione su interfaccia" perché non riesco a decidere in quali situazioni è necessario e in quali è eccessivo (o addirittura controproducente).
Mi piacerebbe sapere di qualsiasi euristica o regola che usi nei tuoi progetti per decidere se devi creare una nuova interfaccia e usarla al posto di una classe specifica.
Giusto per chiarire, nota che la domanda non riguarda i benefici di questa linea guida o l'importanza di seguirla. Si tratta di alcune regole di base che usi per sapere quando usarlo e quando no.