Abhängigkeitsregel
Pfad: Clean Architecture
Dein Controller importiert direkt den Datenbank-Client. Der Service kennt das HTTP-Framework. Alles hängt an allem. Eine Änderung am Framework — und deine Geschäftslogik bricht. Das ist das Grundproblem.
Die Abhängigkeitsregel sagt: Abhängigkeiten zeigen immer nach innen. Äußere Schichten dürfen innere kennen — aber innere Schichten wissen nichts von der Außenwelt. Niemals.
Stell dir ein Restaurant vor: Du sagst, was du willst. Du weißt nicht, wer in der Küche steht. Du kennst nur die Karte — nicht den Koch, nicht den Lieferanten, nicht das Lager.
In Clean Architecture heißt das konkret: Dein Use Case definiert ein Interface. Die Datenbank-Schicht implementiert es. Der Use Case weiß nicht ob die Daten aus PostgreSQL, MongoDB oder einer Textdatei kommen. Er weiß nur, dass er Daten bekommt.
Merke: Wenn dein Code nach außen zeigt, hast du die Richtung verloren.
Wenn dein Code nach außen zeigt, hast du die Richtung verloren. If your code points outward, you have lost the direction.