Notizen
Kapiteln
0:00:06 Willkommen zurück bei der Macht der Kraft.
0:00:33 Einführung in das Thema „Korrektheit und Design“
0:03:14 Wichtigkeit von Architektur und API-Definition
0:05:25 Vererbung und das Liskov Substitution Principle
0:08:04 Favorisierung von Komposition über Vererbung
0:09:54 Single Source of Truth und Vermeidung von Code-Duplikationen
0:11:28 Abstrahieren oder kopieren? Verschiedene Ansätze zur Code-Wiederholung
0:14:58 Minimierung von Duplizierung
0:16:44 Automatisierten Tests zur Verbesserung der Korrektheit
0:22:24 Reviews
Beschreibung
In dieser Diskussion geht es um die Bedeutung des Liskovschen Substitutionsprinzips und des Dry-Prinzips in der Softwareentwicklung. Ich betone die Wichtigkeit des Liskovschen Substitutionsprinzips, insbesondere in Bezug auf die Vererbung von Klassen. Das Prinzip besagt, dass jede Klasse, die eine Basisklasse erweitert, anstelle der Basisklasse verwendet werden können muss, ohne die Wirkung des Programms zu verändern.
Außerdem erkläre ich das Dry-Prinzip, welches besagt, dass Code vermieden werden sollte, der sich wiederholt. Stattdessen sollte der Code abstrahiert werden, um redundante Codestellen zu vermeiden. Als Pragmatiker bevorzuge ich das Abstrahieren des Codes, erkenne jedoch auch die Gültigkeit des Kopierens von Code in bestimmten Situationen an.
Ich teile auch meine Erfahrungen mit der Duplizierung von Code im Kontext von Domain-Driven Design (DDD) und Microservices. Dabei betone ich die Wichtigkeit von automatisierten Tests, um Fehler in der Anwendung zu minimieren, bevor sie beim Kunden ausgeliefert wird. Ich erkläre, dass das Einführen automatisierter Tests in eine bestehende Anwendung eine Herausforderung sein kann, aber dennoch entscheidend für die Verbesserung der Korrektheit ist.
Des Weiteren erwähne ich die Bedeutung von Reviews, um Fehler zu finden und zu beheben, sowie die Verwendung von statischer Code-Analyse, um den Code zu verbessern und potenzielle Probleme zu erkennen. Ich betone, dass kleinere Code-Reviews und statische Code-Analyse dazu beitragen können, die Korrektheit des Codes sicherzustellen.
Insgesamt ist diese Diskussion eine informative und praxisnahe Auseinandersetzung mit dem Liskovschen Substitutionsprinzip, dem Dry-Prinzip und anderen Aspekten der Softwareentwicklung, die Entwicklern dabei helfen können, qualitativ hochwertigen Code zu schreiben.
Transkript
Transkript hier einfügen