Clean Architecture
  • Clean Architecture
  • Che cosa si intende per struttura e architettura
  • Due diversi oggetti di valore
  • Panoramica sui paradigmi
  • La programmazione strutturata
  • La programmazione ad oggetti
  • La programmazione funzionale
  • Principi di progettazione
  • Il principio SRP (Single Responsibility Principle)
  • Il principio OCP (Open-Closed Principle)
  • Il principio LSP (Liskov Substitution Principle)
  • Il principio ISP (Interface Segregation Principle)
  • Il principio DIP (Dependency Inversion Principle)
  • I componenti
  • Coesione dei componenti
  • Accoppiamento dei componenti
  • Che cos'è l'architettura?
  • Indipendenza
  • Delimitazioni: tracciare una linea
  • Anatomia di una delimitazione
  • Politiche e livelli
  • Regole operative
  • Architettura "da urlo"
  • Architettura clean
  • Presenter e Humble Objects
  • Delimitazioni parziali
  • Livelli e delimitazioni
  • Servizi: grandi e piccoli
  • Delimitazione di test
  • Il database è un dettaglio
  • Il Web è un dettaglio
  • I framework sono un dettaglio
  • Caso di studio: vendita di video
  • Manca ancora qualcosa...
Powered by GitBook
On this page
  • Violazione del principio ISP
  • Conclusioni

Was this helpful?

Il principio ISP (Interface Segregation Principle)

Questo principio esorta a dividere le interfacce più grandi in interfacce più piccole e specifiche (chiamate anche interfacce di ruolo). In questo modo le classi concrete implementeranno solo i metodi delle interfacce che effettivamente vengono utilizzati.

Violazione del principio ISP

Quando il codice client dipende da metodi che non utilizza, generalmente significa che c'è qualche problema a livello di astrazione e pertanto si sta violando il principio ISP. Per evitare ciò dobbiamo decomporre il problema in modo tale da identificare i ruoli che entrano in gioco all'interno del nostro dominio. Questa operazione non può essere effettuata a priori, ma bensì quando ci accorgiamo di poter astrarre delle funzionalità, altrimenti andremmo incontro ad un problema di over-engineering.

Conclusioni

In sintesi il principio ISP ci esorta a creare dei componenti dal basso accoppiamento e da un'elevata coesione.

PreviousIl principio LSP (Liskov Substitution Principle)NextIl principio DIP (Dependency Inversion Principle)

Last updated 5 years ago

Was this helpful?