Ausgangslage: 3-Schichten-Architektur
Die Datenbankschicht wird zur Infrastruktur-Schicht erweitert.
Die Datenbank wird Teil der Infrastruktur-Schicht.
Technische Komponenten ziehen um in die Infrastruktur-Schicht
Externe Dienste ziehen um in die Infrastruktur-Schicht
Die Applikationsschicht (mit der Anwendungslogik) ist die wichtigste Schicht der Anwendung: => Ein Hight-Level-Layer
Die Infrastrukturschicht ist untergeordnet: => Ein Low-Level-Layer
Wertvolle Schichten sollten nicht von niederen Schichten abhängen.
Niedere Schichten sollten von wertvollen Schichten abhängen.
In dem in der Applikationschicht Interfaces definiert werden ..
.. und in der Infrastrukturschicht die Implementierungen erfolgen ..
.. kann die Abhängigkeit umgedreht werden.
Dies wird “Dependency Inversion Principle” genannt.
Robert C. Martin:
Das “Dependency Inversion Principle” ist Teil der SOLID Prinzipien