Software-Design-Philosophie: Komplexität bändigen
Dieser Beitrag fasst drei Kerngedanken aus dem Buch "Eine Philosophie des Software-Designs" zusammen: Null Toleranz gegenüber Komplexität, das Missverständnis, dass kleinere Komponenten immer gleich besserer Modularität sind, und die Komplexitäten, die mit der Ausnahmebehandlung verbunden sind. Der Autor argumentiert, dass Komplexität nicht durch einzelne Fehler verursacht wird, sondern sich im Laufe der Zeit ansammelt. Beispiele eines Bestellverarbeitungssystems und der Benutzerregistrierung veranschaulichen, wie man redundanten Code vermeidet und das richtige Gleichgewicht zwischen Komponentengröße und Modularität findet. Darüber hinaus werden drei Techniken zur Reduzierung der Komplexität der Ausnahmebehandlung detailliert beschrieben: Fehler eliminieren, Ausnahmen maskieren und Ausnahmen aggregieren, wobei die Dateibearbeitung als Beispiel dient. Das Buch betont letztendlich die Bedeutung der konsequenten Vereinfachung von Komplexität im Software-Design.