AP2Lernhub
Niedrig

Modularisierung

Kopplung und Kohäsion als Qualitätsmerkmale.

Warum Priorität „Niedrig"? Selten oder als Randthema (unter 40%). Überblick reicht meist.

Lernziele

  • Kopplung und Kohäsion unterscheiden
  • SOLID-Prinzipien benennen
  • Cross-Cutting Concerns erkennen

Qualitätskriterien

  • Kopplung (lose = gut, fest = schlecht): wenige, klare Abhängigkeiten über Schnittstellen.
  • Kohäsion (hoch = gut, niedrig = schlecht): ein Modul tut genau eine Sache.
  • Merksatz: «Hohe Kohäsion, lose Kopplung».

SOLID

  • Single Responsibility – eine Klasse, ein Grund zur Änderung.
  • Open / Closed – offen für Erweiterung, geschlossen für Modifikation.
  • Liskov Substitution – Unterklasse muss Oberklasse ersetzen können.
  • Interface Segregation – kleine, fokussierte Schnittstellen.
  • Dependency Inversion – Abhängigkeiten auf Abstraktionen, nicht auf Details.
pseudocodeschlecht vs. gut (DIP)
// schlecht – feste Kopplung
KLASSE Rechnung
    METHODE speichern()
        neu MySqlRepo().save(this)
    ENDE

// gut – lose Kopplung, Abstraktion
KLASSE Rechnung(repo: Repository)
    METHODE speichern()
        repo.save(this)
    ENDE

Cross-Cutting Concerns

Belange, die viele Module betreffen: Logging, Security, Transaktionen, Caching. Lösung zentral über Aspekte (AOP), Middleware oder Interceptoren.

Übungen

Eine AntwortWelches Ziel gilt als Qualitätsmerkmal guter Modularisierung?

Eine AntwortWas besagt das Dependency-Inversion-Prinzip (DIP)?

Verwandte Themen