Skip to content

Commit 32991e8

Browse files
committed
Add Sphinx documentation and Read the Docs configuration
1 parent 8469652 commit 32991e8

32 files changed

Lines changed: 5401 additions & 2 deletions

.gitignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1-
code/
1+
code/
2+
.venv

.readthedocs.yaml

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# .readthedocs.yaml
2+
# Read the Docs configuration file
3+
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details
4+
5+
version: 2
6+
7+
# Set the version of Python and other tools you might need
8+
build:
9+
os: ubuntu-22.04
10+
tools:
11+
python: "3.13"
12+
13+
# Build documentation in the "docs/" directory with Sphinx
14+
sphinx:
15+
configuration: docs/conf.py
16+
builder: html
17+
18+
# Optionally declare the Python requirements required to build your documentation
19+
# e.g:
20+
# build:
21+
# apt_packages:
22+
# - graphviz
23+
# os: ubuntu-22.04
24+
# tools:
25+
# python: "3.13"
26+
# jobs:
27+
# - requirements: docs/requirements.txt
28+
# name: Python 3.13
29+
30+
# Optionally set the version of Python and requirements required to build your documentation
31+
# build:
32+
# os: ubuntu-22.04
33+
# tools:
34+
# python: "3.13"
35+
# jobs:
36+
# - requirements: docs/requirements.txt
37+
# name: Python 3.13

.vscode/extensions.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
"github.copilot",
66
"ms-python.vscode-pylance",
77
"visualstudioexptteam.vscodeintellicode",
8-
"formulahendry.code-runner"
8+
"formulahendry.code-runner",
9+
"ms-vsliveshare.vsliveshare"
910
]
1011
}

Anleitungen/06_lernweg.md

Lines changed: 198 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,198 @@
1+
# Python Lernweg für Jugendliche 🚀
2+
3+
## Inhaltsverzeichnis
4+
- [Einführung](#einführung)
5+
- [Lernziele](#lernziele)
6+
- [Übersicht der Lerneinheiten](#übersicht-der-lerneinheiten)
7+
- [Detaillierter Lernpfad](#detaillierter-lernpfad)
8+
- [Phase 1: Grundlagen](#phase-1-grundlagen)
9+
- [Phase 2: Erste Schritte mit Programmen](#phase-2-erste-schritte-mit-programmen)
10+
- [Phase 3: Fortgeschrittene Konzepte](#phase-3-fortgeschrittene-konzepte)
11+
- [Phase 4: Projekte und Anwendungen](#phase-4-projekte-und-anwendungen)
12+
- [Tipps für Lehrkräfte](#tipps-für-lehrkräfte)
13+
- [FAQ](#faq)
14+
15+
---
16+
17+
Vorheriges Thema: [String-Operationen](/Anleitungen/05_string_operationen.md) | Nächstes Thema: [Bedingungen und Entscheidungen](/Anleitungen/07_bedingungen.md)
18+
19+
---
20+
21+
## Einführung
22+
23+
Dieser Lernweg ist speziell für Jugendliche konzipiert, die Python lernen möchten. Er bietet eine strukturierte, schrittweise Herangehensweise, die auf die Bedürfnisse junger Lernender zugeschnitten ist. Jedes Thema baut auf dem vorherigen auf und führt neue Konzepte ein, ohne zu überfordern.
24+
25+
Der Lernweg ist in Phasen unterteilt, die jeweils mehrere Lerneinheiten umfassen. So können Schülerinnen und Schüler in ihrem eigenen Tempo lernen und haben regelmäßig Erfolgserlebnisse durch kleine, erreichbare Ziele.
26+
27+
## Lernziele
28+
29+
Nach Abschluss dieses Lernwegs werden die Schülerinnen und Schüler:
30+
31+
- Die Grundlagen der Python-Programmierung verstehen 🧠
32+
- Eigene Programme schreiben können 💻
33+
- Algorithmisches Denken entwickelt haben 🧩
34+
- Probleme systematisch lösen können 🔍
35+
- Kreative Projekte umsetzen können 🎨
36+
- Grundlegende Konzepte der Informatik kennen 📚
37+
38+
## Übersicht der Lerneinheiten
39+
40+
![Lernweg-Übersicht](pfad/zum/bild.png)
41+
42+
| Phase | Schwerpunkt | Hauptthemen | Dauer |
43+
|-------|-------------|-------------|-------|
44+
| 1 | Grundlagen | Kommentare, Python Interpreter, Variablen, Strings | 2-3 Wochen |
45+
| 2 | Erste Programme | Bedingungen, Schleifen, Listen, Funktionen | 3-4 Wochen |
46+
| 3 | Fortgeschrittene Konzepte | Module, Dateien, Fehlerbehandlung | 2-3 Wochen |
47+
| 4 | Projekte | Spieleentwicklung, Datenanalyse, Web-Anwendungen | 3-4 Wochen |
48+
49+
## Detaillierter Lernpfad
50+
51+
### Phase 1: Grundlagen
52+
53+
#### Einheit 1: Erste Schritte
54+
- **[Python Interpreter](/Anleitungen/03_python_interpreter.md)** - Kennenlernen der Programmierumgebung
55+
- *Praktische Übung*: Erste Befehle im Python Interpreter ausprobieren
56+
- *Zeitaufwand*: 1-2 Unterrichtsstunden
57+
- *Ziel*: Die Schüler können den Python Interpreter starten und einfache Befehle ausführen
58+
59+
#### Einheit 2: Kommentare und Algorithmen
60+
- **[Python Kommentare](/Anleitungen/01_Kommentare.md)** - Dokumentation von Code
61+
- **[Algorithmen](/Anleitungen/02_Algorithmen.md)** - Grundverständnis für Abläufe
62+
- *Praktische Übung*: Alltägliche Prozesse als Algorithmen beschreiben
63+
- *Zeitaufwand*: 1-2 Unterrichtsstunden
64+
- *Ziel*: Die Schüler verstehen das Konzept von Algorithmen und können Code dokumentieren
65+
66+
#### Einheit 3: Variablen und Datentypen
67+
- **[Variablen und Datentypen](/Anleitungen/04_variablen_und_Datentypen.md)** - Speichern und Verwenden von Informationen
68+
- *Praktische Übung*: [Grundlagen](/Aufgaben/Kapitel_1/Grundlagen.md)
69+
- *Zeitaufwand*: 2 Unterrichtsstunden
70+
- *Ziel*: Die Schüler können Variablen erstellen und verschiedene Datentypen unterscheiden
71+
72+
#### Einheit 4: Arbeiten mit Text
73+
- **[String-Operationen](/Anleitungen/05_string_operationen.md)** - Textverarbeitung in Python
74+
- *Praktische Übung*: [Strings](/Aufgaben/Kapitel_1/Strings.md)
75+
- *Zeitaufwand*: 2 Unterrichtsstunden
76+
- *Ziel*: Die Schüler können mit Strings arbeiten und grundlegende String-Operationen durchführen
77+
78+
### Phase 2: Erste Schritte mit Programmen
79+
80+
#### Einheit 5: Entscheidungen im Programm
81+
- **Bedingungen und Verzweigungen** - Entscheidungen in Programmen treffen
82+
- *Praktische Übung*: [Bedingungen und Dictionaries](/Aufgaben/Kapitel_2/Bedingungen_und_Dictionaries.md)
83+
- *Zeitaufwand*: 2-3 Unterrichtsstunden
84+
- *Ziel*: Die Schüler können if-else-Strukturen verwenden und Entscheidungen in Programmen implementieren
85+
86+
#### Einheit 6: Wiederholungen
87+
- **Schleifen** - Wiederholte Ausführung von Code
88+
- *Praktische Übung*: Einfache Schleifenaufgaben
89+
- *Zeitaufwand*: 2 Unterrichtsstunden
90+
- *Ziel*: Die Schüler beherrschen for- und while-Schleifen und können sie anwenden
91+
92+
#### Einheit 7: Datensammlungen
93+
- **Listen und Dictionaries** - Verwalten von Datensätzen
94+
- *Praktische Übung*: Erstellen und Bearbeiten von Listen und Dictionaries
95+
- *Zeitaufwand*: 2-3 Unterrichtsstunden
96+
- *Ziel*: Die Schüler können mit Listen und Dictionaries arbeiten und deren Unterschiede verstehen
97+
98+
#### Einheit 8: Funktionen
99+
- **Funktionen** - Wiederverwendbare Codeblöcke
100+
- *Praktische Übung*: [Funktionen](/Aufgaben/Kapitel_6/Funktionen.md)
101+
- *Zeitaufwand*: 2-3 Unterrichtsstunden
102+
- *Ziel*: Die Schüler können eigene Funktionen erstellen und verwenden
103+
104+
### Phase 3: Fortgeschrittene Konzepte
105+
106+
#### Einheit 9: Module und Bibliotheken
107+
- **Module und Built-in Funktionen** - Verwenden externer Funktionalitäten
108+
- *Praktische Übung*: [Module und Built-in Funktionen](/Aufgaben/Kapitel_7/Module_und_Builtin_Funktionen.md)
109+
- *Zeitaufwand*: 2 Unterrichtsstunden
110+
- *Ziel*: Die Schüler können Module importieren und deren Funktionen nutzen
111+
112+
#### Einheit 10: Dateien und Daten
113+
- **Dateiverarbeitung** - Lesen und Schreiben von Dateien
114+
- *Praktische Übung*: Textdateien erstellen und auslesen
115+
- *Zeitaufwand*: 2 Unterrichtsstunden
116+
- *Ziel*: Die Schüler können Dateien öffnen, lesen, schreiben und schließen
117+
118+
#### Einheit 11: Fehlerbehandlung
119+
- **Fehlerbehandlung** - Umgang mit Fehlern und Ausnahmen
120+
- *Praktische Übung*: Try-Except-Blöcke implementieren
121+
- *Zeitaufwand*: 1-2 Unterrichtsstunden
122+
- *Ziel*: Die Schüler können Fehler abfangen und behandeln
123+
124+
### Phase 4: Projekte und Anwendungen
125+
126+
#### Einheit 12: Grafische Elemente
127+
- **Turtle-Grafik** - Einfache grafische Darstellungen
128+
- *Praktische Übung*: [Turtle Grafik](/Aufgaben/Kapitel_3/Turtle_Grafik.md)
129+
- *Zeitaufwand*: 2-3 Unterrichtsstunden
130+
- *Ziel*: Die Schüler können einfache Grafiken mit Turtle erstellen
131+
132+
#### Einheit 13: Einfache Spiele
133+
- **Spieleentwicklung** - Grundlagen der Spieleprogrammierung
134+
- *Praktische Übung*: [Spiele](/Aufgaben/Kapitel_4/Spiele.md)
135+
- *Zeitaufwand*: 3-4 Unterrichtsstunden
136+
- *Ziel*: Die Schüler können ein einfaches Spiel programmieren
137+
138+
#### Einheit 14: Text-Generatoren
139+
- **Zufallsgeneratoren** - Arbeiten mit Zufallszahlen
140+
- *Praktische Übung*: [Kompliment-Generator](/Aufgaben/Kapitel_5/Kompliment_Generator.md)
141+
- *Zeitaufwand*: 2 Unterrichtsstunden
142+
- *Ziel*: Die Schüler können mit Zufallszahlen arbeiten und einfache Text-Generatoren erstellen
143+
144+
#### Einheit 15: Fortgeschrittene Funktionen
145+
- **Funktionsdesign** - Fortgeschrittene Konzepte bei Funktionen
146+
- *Praktische Übung*: [Funktionsdesign](/Aufgaben/Kapitel_8/Funktionsdesign.md)
147+
- *Zeitaufwand*: 2-3 Unterrichtsstunden
148+
- *Ziel*: Die Schüler können komplexere Funktionen entwerfen und implementieren
149+
150+
#### Einheit 16: Abschlussprojekt
151+
- **Pygame** - Entwicklung eines komplexeren Spiels
152+
- *Praktische Übung*: [Pygame Ghost Game](/Aufgaben/Kapitel_9/Pygame_Ghost_Game.md)
153+
- *Zeitaufwand*: 4-6 Unterrichtsstunden
154+
- *Ziel*: Die Schüler können ein Pygame-Projekt umsetzen und dabei alle gelernten Konzepte anwenden
155+
156+
## Tipps für Lehrkräfte
157+
158+
### Allgemeine Unterrichtsgestaltung
159+
- **Strukturierte Einführung**: Beginnen Sie jede Einheit mit einer kurzen Erklärung des Themas und der Lernziele.
160+
- **Live-Coding**: Demonstrieren Sie Konzepte durch Live-Coding und ermutigen Sie die Schüler, mitzumachen.
161+
- **Pair Programming**: Lassen Sie die Schüler in Paaren arbeiten, um Probleme gemeinsam zu lösen.
162+
- **Regelmäßige Pausen**: Planen Sie kurze Pausen ein, besonders bei längeren Coding-Sessions.
163+
164+
### Differenzierung
165+
- **Zusatzaufgaben**: Bereiten Sie Erweiterungsaufgaben für schnellere Schüler vor.
166+
- **Hilfekarten**: Erstellen Sie Hilfekarten mit Tipps für Schüler, die Schwierigkeiten haben.
167+
- **Gemischte Gruppen**: Bilden Sie Gruppen mit unterschiedlichen Fähigkeitsniveaus für Peer-Learning.
168+
169+
### Motivation
170+
- **Realweltbezug**: Zeigen Sie praktische Anwendungen der Programmierkonzepte im Alltag.
171+
- **Erfolge feiern**: Heben Sie Fortschritte und kreative Lösungen der Schüler hervor.
172+
- **Spielerische Elemente**: Integrieren Sie spielerische Elemente wie Coding-Challenges oder kleine Wettbewerbe.
173+
174+
## FAQ
175+
176+
### Für Schüler
177+
- **F: Wie viel Zeit sollte ich für Übungen außerhalb des Unterrichts einplanen?**
178+
A: 1-2 Stunden pro Woche sind ideal, um das Gelernte zu festigen.
179+
180+
- **F: Was mache ich, wenn ich bei einer Aufgabe nicht weiterkomme?**
181+
A: Versuche das Problem in kleinere Schritte zu zerlegen. Wenn du immer noch Schwierigkeiten hast, frag einen Mitschüler oder deinen Lehrer.
182+
183+
- **F: Kann ich auch eigene Projekte entwickeln?**
184+
A: Absolut! Eigene Projekte sind eine großartige Möglichkeit, das Gelernte anzuwenden und zu vertiefen.
185+
186+
### Für Lehrkräfte
187+
- **F: Wie kann ich Schüler mit unterschiedlichen Vorkenntnissen gleichermaßen fördern?**
188+
A: Arbeiten Sie mit differenzierten Aufgaben und bieten Sie zusätzliche Ressourcen für fortgeschrittene Schüler an.
189+
190+
- **F: Wie gehe ich mit technischen Problemen im Unterricht um?**
191+
A: Bereiten Sie im Voraus alternative Aktivitäten vor und ermutigen Sie Schüler, sich gegenseitig zu helfen.
192+
193+
- **F: Wie bewerte ich Programmierprojekte fair?**
194+
A: Verwenden Sie klare Bewertungskriterien, die nicht nur das Endergebnis, sondern auch den Prozess, die Dokumentation und die Kreativität berücksichtigen.
195+
196+
---
197+
198+
Viel Erfolg beim Unterrichten und Lernen von Python! 🐍

0 commit comments

Comments
 (0)