Design Pattern Katas für Java: Übung macht den Meister

09.08.2017

Design Patterns gehören zum Handwerkszeug eines jeden Softwareentwicklers. Sie helfen dabei, ein gutes Code-Design zu erzielen, ohne dass das Rad jedes Mal neu erfunden werden muss. Für Anfänger ist der Einstieg in die Materie jedoch nicht immer ganz einfach. Design Pattern Katas sind eine Möglichkeit, das Entwickeln mit Patterns abseits vom Projekt und auf ganz praktische Art und Weise zu lernen.

Code Kata: Übungsaufgaben für Softwareentwickler

Code KataCode Katas sind eine Methode, mit der Softwareentwickler ihre Programmier-Fertigkeiten verbessern können. Der Begriff Kata stammt aus dem Karate und bezeichnet eine kurze Abfolge von Bewegungen, die bis zur Perfektion immer und immer wieder geübt werden. Übertragen auf die Softwareentwicklung, sind Katas kurze Programmierübungen, die jeweils einen Aspekt aus der Programmierung trainieren sollen. Sie sollen vom Entwickler so oft wiederholt werden, bis er die Übungsaufgabe elegant und effizient lösen kann. David „Pragdave“ Thomas hat diese Methode geprägt. Die Übungsaufgaben sind im Detail unter http://codekata.com beschrieben.

Design Patterns: Praktische Problemlösung
design patterns

Jedem Softwareentwickler sollten Design Patterns (deutsch Entwurfsmuster) ein Begriff sein. Dabei handelt es sich um „bewährte Lösungsschablonen für wiederkehrende Entwurfsprobleme in der Softwareentwicklung“[1]. Das Buch „Design Patterns – Elements of Reusable Object-Oriented Software“, in dem die unter dem Spitznamen „Gang of Four“ bekannt gewordenen Autoren[2] 23 Entwurfsmuster beschreiben, hat den Design Patterns zu ihrem Durchbruch verholfen.

Design Pattern Katas: Learning by doing

Github Logo

Aus der Idee heraus, beides miteinander zu kombinieren, sind die Design Pattern Katas für Java entstanden. Sie sind als Maven-Projekt auf GitHub unter der URL https://github.com/doubleSlashde/DesignPatternKatas.git öffentlich verfügbar. Ganz nach dem Motto „learning by doing“ kann damit die Implementierung verschiedener gängiger Design Patterns ganz praktisch geübt werden.

Aktuell steht ein Kata für die Factory Method und eins für das State Pattern zur Verfügung. Katas für weitere Patterns folgen.

Voraussetzungen sind aktuelle Versionen von Git, Maven sowie Java 8.

Wie funktionieren Design Pattern Katas?

Nach dem Klonen von GitHub kann das Projekt mit der „Maven-Projekt importieren“-Funktion in die jeweils bevorzugte Java-IDE importiert werden. Für jedes Design Pattern gibt es eine JUnit-Testklasse mit einer Reihe von fehlschlagenden Tests, sowie ein paar vorbereitete Gerüstklassen. Letztere müssen durch Implementierung des jeweiligen Design Patterns ergänzt werden, so dass die JUnit-Tests des jeweiligen Patterns erfolgreich durchlaufen. Die Testklassen selbst sollen nicht verändert werden. Zur Unterstützung gibt es Kommentare mit TODOs in den vorbereiteten Klassen.

Eine ausführlichere Anleitung inklusive UML-Diagramme findet sich hier.

Fazit

Mit den Design Pattern Katas finden (nicht nur) Anfänger einen leichten und praktischen Einstieg in die Welt der Entwurfsmuster.


Quellen:
[1] https://de.wikipedia.org/wiki/Entwurfsmuster
[2] Erich Gamma, Richard Helm, Ralph Johnson & John Vlissides


Lust auf Java-Projekte? Jetzt bewerben

Zurück zur Übersicht

2 Kommentare zu “Design Pattern Katas für Java: Übung macht den Meister

  1. Hallo Susanne,

    vielen Dank für das Lob, das hört man gern! :-)
    Sicherlich wäre es möglich, weitere Design Pattern Katas zur Verfügung zu stellen. Das Ganze ist allerdings auch relativ zeitaufwändig – schwer zu sagen also wann ich wieder mal dazu komme.

    Viele Grüße
    Stefan Waldmann

  2. Tolle Umsetzung! So macht der Erstkontakt mit Design Pattern Spaß!
    Gibt es noch weitere Pattern, die Sie auf diese Weise zur Verfügung stellen könnten?

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

*Pflichtfelder

*