👋 Willkommen zu deiner Übungsreihe!
Dieser Kurs begleitet dich durch die gesamte Objektorientierte Programmierung in Python – exakt abgestimmt auf dein Schulskriptum, aber mit viel mehr Erklärungen, Analogien, Visualisierungen und automatischen Tests!
🏗️ Die Grundidee von OOP in einem Satz:
Eine Klasse ist wie ein Bauplan (oder eine Plätzchen-Ausstechform). Ein Objekt ist das fertige Haus (oder das gebackene Plätzchen), das nach diesem Bauplan entstanden ist!
📚 Schulabgleich & Lehrplan:
Alle Kapitel sind 1:1 mit den Themen deines Informatik-Unterrichts (Type Hints, UML, Assoziationen, Referenzen, Vererbung, Tkinter) abgestimmt.
🌱 Phase 1: Grundlagen OOP & Entwicklungsumgebung
Warm-up 00
🔍 Fehlersuche & Bugs
Tracebacks richtig lesen, Einrückungsfehler (IndentationError), Typfehler und Detektiv-Aufgabe.
Kapitel 01
🐶 Die erste Klasse
Bauplan vs. Objekt, Instanziierung, Punktnotation und Type Hints am Fahrrad- & Haustier-Beispiel.
Kapitel 02
💳 Konstruktor & self
Wie
__init__ Objekte startklar macht, was self bedeutet und erste UML-Klassendiagramme.
Kapitel 03
⚔️ Methoden & Verhalten
Objekte führen Aktionen aus! Interaktion zwischen Objekten in Rennautos und RPG-Heldenduellen.
Kapitel 04
🧾 Schöne Textausgabe
Wie man
print(objekt) mit __str__ lesbar macht und Rechnungsdruck im Warenkorb.
Exkurs 04b
🚀 Umstieg & Installation VS Code
Installationsanleitung (Win/Mac/Linux), Plugins (Error Lens, Python), Shortcuts & Terminal.
Kapitel 05
🎵 Assoziation & Komposition
Objekte verwalten andere Objekte: Song-Suche, Längenberechnung und Filter in Spotify-Playlists.
Kapitel 06
🥚 Mini-Projekt: Tamagotchi
Kombiniere alles in einem voll spielbaren, interaktiven virtuellen Haustier für dein Terminal!
🧠 Phase 2: Fortgeschrittenes OOP, Speicher & Persistenz
Kapitel 07
🌳 Referenzen & Stammbäume
Speicherbereiche im RAM, Aliasing (
b = a), is vs. == und Familienstammbaum-Klassen.
Kapitel 08 • Geplant
➕ Operator Overloading & Dunder
Eigene Klassen rechen- und vergleichbar machen mit
__add__, __eq__, __lt__ für 2D-Vektoren & Kartenspiele.
Kapitel 09 • Geplant
🧬 Vererbung & super()
Basisklassen, Kindklassen, Code-Wiederverwendung und
super().__init__() für Fahrzeugflotten & RPG-Helden.
Kapitel 10 - 12 • Geplant
🛡️ Exceptions, Persistenz & GUI
Polymorphie (10), Eigene Fehlerklassen (11), Spielstände dauerhaft mit JSON/CSV sichern (12) und Desktop-Apps mit Tkinter (13).
🚀 Wie du vorgehst (Schritt-für-Schritt)
- Wähle das nächste offene Kapitel aus der Liste oben (starte mit Kapitel 00 zum Warm-up).
- Lies die Erklärungen und schau dir die vollständigen Codebeispiele an.
- Öffne die
aufgabe.pyim entsprechenden Kapitelordner und löse die Aufgaben. -
Führe im Terminal den automatischen Test aus:
Terminal
python3 test_aufgabe.py - Wenn alle Tests mit OK durchlaufen, hast du das Kapitel erfolgreich gemeistert! 🎉
💡 Gesamten Fortschritt auf einen Blick prüfen:
Du kannst jederzeit im Hauptordner folgenden Befehl ausführen, um zu sehen, wie viele Kapitel du schon gelöst hast:
python3 test_all.py