Clean Code

Seit Robert C. Martin sein berühmtes Buch „CleanCode“ geschrieben hat, ist der Begriff CleanCode zum Synonym für guten, erweiterbaren und wartbaren Sourcecode geworden. Aber was genau bedeutet das eigentlich, und vor allem, wie schreibt man „CleanCode“?
In diesem Seminar möchten wir Ihnen die Philosophie von CleanCode erläutern und das nötige Handwerkszeug an die Hand geben, damit Sie in Zukunft echten „CleanCode“ schreiben können.

Zur praktischen Vermittlung der Inhalte nutzen die Teilnehmenden das vorbereitete „Baseball“-Projekt in Eclipse Oxygen unter Verwendung von Java8, JUnit5 und Mockito. Durch die Einbindung von LEGO Mindstorms Roboter erhält der Lernstoff eine praktische Komponente, mit der die Lernerfolge anschaulich dargestellt werden können.

Voraussetzungen

Das Seminar richtet sich an Java Softwareentwickler:innen, die die Qualität ihres Codes und damit den Wert ihrer Software nachhaltig steigern wollen. Sie sollten bereits Erfahrung in der Entwicklung mit Java haben.

Sie beherrschen die Programmierung mit objektorientierten Programmiersprachen im Allgemeinen und mit Java im Speziellen.

Schulungsziel

In dieser Schulung lernen Sie, ausgehend von einer kurzen Wiederholung grundlegender Technologien wie HTTP und REST, wie Sie GraphQL effektiv nutzen und selbst implementieren können.

Facts
Tage
0
Teilnehmer
2

Die Hauptinhalte dieser Schulung sind:

  • Einführung
    • Was ist „sauberer Code“?
    • Umsetzen von sauberem Code anhand einfacher Beispiele, darunter:
      • Benennung von Funktionen und Variablen
        • Aufteilung und Größe von Klassen und Funktionen
    • Analyse der Zuständigkeiten und der Abstraktionsebenen und Kohäsion
      • Formatierung des Codes und Schreiben von Kommentaren
      • Schrittweise Verbesserung des Programmcodes
    • Die Vorteile von sauberem Code
  • Kurzeinführung Test-Driven Development
    • Der TDD-Cycle
    • JUnit und Mockito
  • SOLID
    • Single-Responsibility-Principle
    • Open-Closed-Principle
    • Liskovsches Substitutionsprinzip
    • Interface-Segregation
    • Dependency-Injection
  • Die Baseball-Übung
    • Testgetriebene Entwicklung einzelner Komponenten eines Baseballspiels
    • Benutzung von Testattrappen mithilfe von Mockito
    • Mit dem Roboter Bewegungen ausführen
    • Sinnvolles Verknüpfen einzelner Module zu einem kompletten Spieler