Series: Wissenshäppchen

Don’t Repeat Yourself (DRY) – Wissenshäppchen #1

Dieser Beitrag ist Teil 1 von 8 in der Serie Wissenshäppchen.

In der ersten Episode meiner „Wissenshäppchen“ widme ich mich einem der wichtigsten Prinzipien der Softwareentwicklung: Don’t Repeat Yourself (DRY). Doppelter Code ist der Feind jedes Entwicklers! 🙂 Every piece of knowledge must have a single, unambiguous, authoritative representation within a system. (DontRepeatYourself) Am Beispiel einer weit verbreiteten Programmierübung zeige ich den Weg von doppeltem zu…

Read More

You Ain’t Gonna Need It (YAGNI) – Wissenshäppchen #2

Dieser Beitrag ist Teil 2 von 8 in der Serie Wissenshäppchen.

In der zweiten Episode meiner „Wissenshäppchen“ geht es um ein weiteres wichtiges Prinzip der Softwareentwicklung: You Ain’t Gonna Need It (YAGNI) (alternativ auch You Aren’t Gonna Need It). Wir sollten immer nur das entwickeln, was wir wirklich brauchen! Always implement things when you actually need them, never when you just foresee that you need them….

Read More

Single Responsibility Principle (SRP) – Wissenshäppchen #3

Dieser Beitrag ist Teil 3 von 8 in der Serie Wissenshäppchen.

Mein drittes Wissenshäppchen hat das Single Responsibility Principle zum Thema. Inhalt Das SRP ist das erste der sogenannten SOLID-Prinzipien. Robert „Uncle Bob“ Martin definiert es so: There should never be more than one reason for a class to change. Jede Klasse sollte genau einen einzigen Grund haben, um geändert zu werden. Man kann das Prinzip…

Read More

Open Closed Principle (OCP) – Wissenshäppchen #4

Dieser Beitrag ist Teil 4 von 8 in der Serie Wissenshäppchen.

Mein viertes Wissenshäppchen hat das Open Closed Principle zum Thema. Inhalt Das OCP ist das zweite der SOLID-Prinzipien. Es wurde vor Robert „Uncle Bob“ Martin bereits 1988 von Bertrand Meyer definiert: Software entities (classes, modules, functions, etc.) should be open for extension, but closed for modification. Ursprünglich ging es darum, durch Vererbung die Anpassung („modification“)…

Read More

Liskov Substitution Principle (LSP) – Wissenshäppchen #5

Dieser Beitrag ist Teil 5 von 8 in der Serie Wissenshäppchen.

Im fünften Wissenshäppchen geht es um das Liskov Substitution Principle. Inhalt Das LSP ist das dritte der fünf SOLID-Prinzipien. Es wurde 1987 von Barbara Liskov definiert, die ihm auch seinen Namen gab: Functions that use pointers or references to base classes must be able to use objects of derived classes without knowing it. Man könnte…

Read More

Interface Segregation Principle (ISP) – Wissenshäppchen #6

Dieser Beitrag ist Teil 6 von 8 in der Serie Wissenshäppchen.

Das sechste Wissenshäppchen hat das Interface Segregation Principle als Thema. Inhalt Das ISP ist das vierte SOLID-Prinzip. The dependency of one class to another one should depend on the smallest possible interface. Im Prinzip kann man das ISP so zusammenfassen: Verwende immer nur die kleinstmögliche Schnittstelle zu deinen Abhängigkeiten. Je mehr Funktionen eine Komponente an…

Read More

Dependency Inversion Principle (DIP) – Wissenshäppchen #7

Dieser Beitrag ist Teil 7 von 8 in der Serie Wissenshäppchen.

Im siebten Wissenshäppchen geht es um das Dependency Inversion Principle. Inhalt Das DIP ist das letzte der fünf SOLID-Prinzipien. High level modules should not depend upon low level modules. Both should depend upon abstractions. Oder: Abstractions should not depend upon details. Details should depend upon abstractions. Welche Abhängigkeiten werden hier „umgedreht“? Komponenten, die andere Komponenten…

Read More

Law of Demeter (LoD) – Wissenshäppchen #8

Dieser Beitrag ist Teil 8 von 8 in der Serie Wissenshäppchen.

Law of Demeter (LoD) Um das Law of Demeter (Gesetz von Demeter) in der Softwareentwicklung geht es im achten Wissenshäppchen. Inhalt Das Law of Demeter sagt aus, dass eine Methode nur Zugriff auf die folgenden Objekte/Methoden haben sollte: Andere Instanzmethoden in ihrer eigenen Klasse Ihre Parameter Methoden in Objekten, die sie selbst erzeugt Globale Variablen…

Read More