Initial commit; create Website for learning python.
This commit is contained in:
@@ -0,0 +1,62 @@
|
||||
# Kurs-Dokumentation
|
||||
|
||||
## Zielgruppe
|
||||
|
||||
Raphael ist 12 Jahre alt und soll Python praktisch, spielerisch und mit schnellen Erfolgserlebnissen lernen. Der Kurs verwendet eine Agenten-Geschichte, kurze Konzepte, direkt ausfuehrbare Uebungen und Mini-Tests.
|
||||
|
||||
## Didaktischer Aufbau
|
||||
|
||||
Jede Mission besteht aus fuenf Phasen:
|
||||
|
||||
1. Story: Motivation und Problemrahmen.
|
||||
2. Lernen: Ein kleines Konzept mit Beispielcode.
|
||||
3. Ueben: Raphael schreibt oder veraendert Code.
|
||||
4. Test: Eine kurze Verstaendnisfrage.
|
||||
5. Fertig: XP, Level und naechste Mission.
|
||||
|
||||
Die Reihenfolge ist bewusst progressiv:
|
||||
|
||||
- Ausgabe mit `print()`
|
||||
- Variablen und Datentypen
|
||||
- Rechnen
|
||||
- Fehlermeldungen lesen
|
||||
- Eingaben mit `input()`
|
||||
- Bedingungen mit `if`, `else`, `and`, `or`
|
||||
- Schleifen
|
||||
- Listen
|
||||
- Funktionen und Parameter
|
||||
- Kombination in Quiz, Text-Adventure, Passwortgenerator und Abschlussprojekt
|
||||
|
||||
## Paedagogische Regeln
|
||||
|
||||
- Kurze Aufgaben statt langer Theorie.
|
||||
- Fehler werden als Hinweise dargestellt, nicht als Scheitern.
|
||||
- Der Mentor gibt keine Komplettloesungen, sondern Denkstufen.
|
||||
- XP und Abzeichen motivieren, ersetzen aber nicht die eigentliche Uebung.
|
||||
- Aufgaben enthalten Hilfen in mehreren Stufen, damit Raphael zuerst selbst probieren kann.
|
||||
|
||||
## Technische Architektur
|
||||
|
||||
Die App ist eine einzelne HTML-Datei:
|
||||
|
||||
- HTML/CSS/JavaScript ohne Build-Schritt.
|
||||
- `localStorage` fuer Fortschritt und Code-Entwuerfe.
|
||||
- Pyodide fuer echte Python-Ausfuehrung im Browser.
|
||||
- Regelbasierter lokaler Mentor statt externer API.
|
||||
- Responsive Layout fuer Desktop, Tablet und schmale Bildschirme.
|
||||
|
||||
## Resilienz
|
||||
|
||||
- Wenn Pyodide nicht geladen werden kann, zeigt die App einen klaren Status und verhindert falsche Erfolgsmeldungen beim Ausfuehren.
|
||||
- Falsche Quiz-Antworten sperren die Mission nicht; Raphael kann erneut versuchen.
|
||||
- Code-Entwuerfe werden pro Mission gespeichert.
|
||||
- Texte werden beim Rendern escaped, damit Codebeispiele nicht als HTML interpretiert werden.
|
||||
- Die App benoetigt keinen lokalen Server, funktioniert aber auch mit `python3 -m http.server`.
|
||||
|
||||
## Weiterentwicklung
|
||||
|
||||
Sinnvolle naechste Schritte:
|
||||
|
||||
- Weitere Missionen zu Dictionaries, Dateien und einfachen Spielen.
|
||||
- Optionales lokales Vendoring von Pyodide, falls der Kurs komplett offline laufen soll.
|
||||
- Kleine Beispiel-Loesungen in einer separaten, nicht direkt sichtbaren Lehrerdatei.
|
||||
Reference in New Issue
Block a user