Quelle: dotnetpro
Liesers Clean Code 13.12.2021, 00:00 Uhr

Vom DIP zum IOSP

Das Dependency Inversion Principle hat die Softwareentwicklung beim Umgang mit Abhängigkeiten entscheidend vorangebracht. Zeit, den nächsten Schritt zu gehen.
Abhängigkeiten zwischen Funktionseinheiten sind eine der größten Herausforderungen bei der Entwicklung von Softwaresystemen. Das gilt auf jeder Ebene der Modulhierarchie, also für Methoden, Klassen, Bibliotheken, Pakete, Komponenten und Microservices. Sobald Abhängigkeiten ungeplant und unreflektiert wuchern können, steht es schlecht um das System. Dies hat zwei Gründe. Zum einen erschweren Abhängigkeiten das automatisierte Testen. Wenn immer nur „alles“ getestet werden kann, steigt der Aufwand für das Sicherstellen der Korrektheit immens an. Insofern ist es notwendig, Abhängigkeiten so zu strukturieren, dass sich die entstehenden Einheiten leicht automatisiert testen lassen.
Der zweite Grund ist die Wandelbarkeit. Wenn ein Entwickler die Zusammenhänge zwischen den Bestandteilen des Systems nicht leicht verstehen kann, ist es nicht weit her mit der Wandelbarkeit. Dann wird jede Änderung das Problem weiter verstärken.

dotnetpro

Sie wollen zukünftig auch von den Vorteilen eines plus-Abos profitieren? Werden Sie jetzt dotnetpro-plus-Kunde
  • 2 Monate Gratis testen
  • Über 4.000 qualifizierte Fachartikel
  • Auf jedem Gerät verfügbar