Konzepterklärung
Diese Lektion verbindet die Grundlagen, indem Java-Code in einem kleinen, projektähnlichen Beispiel statt in einem isolierten Snippet platziert wird. Sie arbeiten mit einem einfachen Dienst, speisen ihn mit realen Eingaben und beobachten, wie kleine Designentscheidungen die Klarheit und Wartbarkeit beeinflussen. Das Hauptziel ist es, die Integration zu üben: Methoden, Zustand und Ausgabe so zu verbinden, dass es sich auch dann noch organisiert anfühlt, wenn der Code über eine einzelne Aufgabe hinauswächst.
Wo der Code hingehört
- Definieren Sie Farb- und Positionsvariablen oben.
- Erstellen Sie die Logik zum Zeichnen oder Platzieren von Formen in der Mitte.
- Rendern Sie die Ausgabe (Druck, Canvas, SVG oder gestylter Block) am Ende.
Befehlsreferenz
- Führen Sie das Projektbeispiel einmal aus und verfolgen Sie dann, wie Daten von `main` in den Dienst und als Ausgabe zurückfließen.
- Erstellen Sie einen kleinen Eingabesatz mit zwei SKUs und überprüfen Sie, ob der Dienst jedes Ergebnis korrekt speichert.
- Refaktorieren Sie einen Logikteil in eine eigene Methode, damit die Klasse einfacher zu testen ist.
- Dokumentieren Sie eine Designentscheidung, die dazu beiträgt, dass sich dieses Beispiel wie ein echtes Miniprojekt anfühlt und nicht wie ein loses Code-Snippet.
Schritt-für-Schritt-Anleitung
- Lesen Sie den Ablauf von `main` zum Dienst und identifizieren Sie, wo der Zustand gespeichert wird.
- Führen Sie die Basisversion ohne Änderungen aus und bestätigen Sie die Startausgabe.
- Nehmen Sie eine gezielte Änderung vor, z. B. das Ablehnen ungültiger Mengen oder die Unterstützung einer weiteren Artikelsuche.
- Testen Sie einen erwarteten Fall und einen Grenzfall, um zu überprüfen, ob die Integration noch funktioniert.
- Schließen Sie mit einer kurzen Checkliste ab, die Klarheit, Korrektheit und die Frage abdeckt, ob jede Klasse eine klare Aufgabe hat.
Übungsaufgaben
- Erweitern Sie das Beispiel so, dass es Bestände sowohl entfernen als auch hinzufügen kann.
- Erstellen Sie ein zweites Miniprojekt mit derselben Struktur für Aufgaben, Tickets oder Bibliotheksbücher.
- Schreiben Sie einen kurzen Ausgabebericht, der beweist, dass der Dienst nach mehreren Operationen korrekt funktioniert.
Coding-Challenges
- Implementieren Sie zwei Versionen der Bestandslogik und vergleichen Sie, welche einfacher zu warten ist.
- Entwerfen Sie ein etwas größeres Szenario mit mehreren Diensten und erklären Sie, wie Sie die Verantwortlichkeiten getrennt halten würden.
Kleine Übungsaufgaben
- Fügen Sie eine Guard Clause für ungültige oder leere Artikelcodes hinzu.
- Schreiben Sie eine schnelle manuelle Überprüfung für eine fehlende SKU-Suche.
- Fassen Sie in einer Zeile zusammen, wofür dieses Miniprojekt verantwortlich ist.
Häufiger Fehler
Mixing x and y axes or using wrong coordinate origin causes shapes to appear in unexpected places.
Mini-Challenge aus der Praxis
Draw one square, one triangle, and one circle, then move X marker 2 steps right and 1 step down.