Primitive Datentypen wie Strings, Zahlen oder Listen finden sich oft überall in einer Anwendung. Meist sind Konzepte aus der Fachdomäne, wie “Aufgabe”, “Projekt” oder “Kunde” passender. Sie helfen, die Sprache des Anwenders sprechen zu lernen und Missverständnisse zu vermeiden. Solche Missverständnisse sind eine der häufigsten Ursachen für Bugs.

Das Kapseln primitiver Typen in fachliche Konzepte ermöglicht:

  • bessere Strukturierung der Anwendung
  • erleichtertes Refactoring
  • Reduzierung von Missverständnissen

In diesem Workshop werden für eine bestehende Codebasis neue Features implementiert. Dabei werden wir mir Hilfe von Refactorings die Verwendung primitiver Typen begrenzen und Designprinzipien folgen, wie z.B.

  • Command/Query Separation
  • SOLID-Design
  • Testgetriebene Entwicklung

Das Vorgehen wird in einem kurzen Einführungsvortrag erklärt. Danach werden die Teilnehmer im Pair Programming selbst aktiv. Am Ende steht ein Austausch in der Gesamtgruppe.

Voraussetzungen:

  • Kenntnisse in Java
  • Eine Entwicklungsumgebung für Java mit Maven-Integration und JUnit 4
  • Kenntnisse von Designprinzipien

Franziska Sauerwein andrena objects ag, Deutschland

Franziska Sauerwein ist Softwareentwicklerin bei der andrena objects ag. In der täglichen Projektarbeit bringt sie besonders gerne Methodiken aus XP und Scrum ein. In ihrer Freizeit besucht sie Treffen der Softwerkskammer sowie Konferenzen für Software Craftsmenship und organisiert das andrena-interne Pizza & Code.

Urs Metz andrena objects ag, Deutschland

Urs Metz ist Softwareentwickler bei der andrena objects ag. In seiner täglichen Arbeit liegt sein Augenmerk auf verständlichen Code und Testbarkeit. Daneben begeistert er sich für die Software-Craftmenship-Bewegung und besucht daher regelmäßig Softwerkskammer-Veranstaltungen.