Konzepterklärung
Diese Lektion führt mehrere grundlegende C++-Konzepte für Anfänger in einem kleinen Programm zusammen. Anstatt isolierte Zeilen zu schreiben, erstellen Sie eine kleine Aufgabenliste, die Daten speichert, neue Einträge hinzufügt und den aktuellen Zustand lesbar ausgibt. Ziel ist es zu zeigen, wie einfache `structs`, `vectors` und Funktionen sich wie Teile eines echten Programms anfühlen, wenn sie zusammenarbeiten. Sie streben noch keine große Anwendung an. Sie üben, wie man zusammenhängende Logik organisiert, damit der Code auch bei wachsender Funktionalität überschaubar bleibt.
Wo der Code hingehört
- Beginnen Sie mit Variablen und Eingaben. Halten Sie `includes`, `main`-Funktion und Datentypen explizit.
- Fügen Sie die Verarbeitungslogik im mittleren Abschnitt hinzu.
- Schließen Sie mit Ausgabe und schneller Validierung ab.
Befehlsreferenz
- Kompilieren und führen Sie das Programm aus, dann bestätigen Sie, dass beide Aufgaben mit dem erwarteten Status „ausstehend“ erscheinen.
- Fügen Sie eine weitere Aufgabe hinzu und überprüfen Sie, ob die Ausgabe wächst, ohne die `print`-Funktion zu ändern.
- Verschieben Sie wiederholte Logik in eine Funktion, anstatt alles innerhalb von `main()` zu behandeln.
- Verwenden Sie `const`, wo es die Sicherheit verbessert und die Absicht der Funktion leichter lesbar macht.
Schritt-für-Schritt-Anleitung
- Lesen Sie das `struct` und erklären Sie, was jedes Feld darstellt, bevor Sie Code ändern.
- Kompilieren Sie die Basisversion und überprüfen Sie, ob Aufgaben gespeichert und in der richtigen Reihenfolge angezeigt werden.
- Fügen Sie eine Hilfsfunktion für eine klare Aufgabe hinzu, z. B. zum Hinzufügen oder Ausgeben von Aufgaben.
- Nehmen Sie eine kleine Änderung am Ausgabeformat vor und vergleichen Sie das Ergebnis vorher und nachher.
- Schließen Sie mit einem kurzen Check ab: Ist der Code nach dem Hinzufügen des neuen Verhaltens immer noch leicht zu überblicken?
Übungsaufgaben
- Erstellen Sie eine Version, die eine Aufgabe als erledigt markiert, bevor die Liste ausgegeben wird.
- Erstellen Sie ein ähnliches Miniprogramm für Einkaufsartikel, das dasselbe `struct`-plus-`vector`-Muster verwendet.
- Schreiben Sie das Beispiel so um, dass `main()` hauptsächlich Funktionen koordiniert, anstatt die gesamte Arbeit direkt zu erledigen.
Coding-Challenges
- Verhindern Sie, dass leere Aufgabentitel hinzugefügt werden, und entscheiden Sie, wohin diese Regel gehört.
- Vergleichen Sie eine Version mit der gesamten Logik in `main()` mit einer Version, die in Hilfsfunktionen aufgeteilt ist, und erklären Sie dann, welche einfacher zu erweitern ist.
Kleine Übungsaufgaben
- Benennen Sie eine Funktion oder Variable um, damit ihr Zweck ohne zusätzliche Kommentare offensichtlich ist.
- Fügen Sie einen schnellen manuellen Test hinzu, indem Sie eine dritte Aufgabe einfügen und das Programm erneut ausführen.
- Schreiben Sie eine Zeile, die beschreibt, was dies zu einem kleinen, aber echten Beispiel im Projektstil macht.
Häufiger Fehler
Skipping input validation or mixing logic/output in one unstructured block.
Mini-Challenge aus der Praxis
Build a small real-life example for this lesson topic using 3 clear steps: input, process, output.