Spielwerkstatt
In der Spielwerkstatt entwickelst du dein eigenes Spiel, und zwar nicht in einer Doppelstunde, sondern über die ganze Einführungsphase und weiter in die Qualifikationsphase. Es ist ein Abenteuer von oben gesehen, ein 2D-Rollenspiel mit Figuren, Landschaften, Gegnern und Schätzen. Alle starten mit demselben kleinen Startgerüst. Was daraus wird, entscheidest du.
Vorwissen
🥳 Du brauchst kein Vorwissen. Das Startgerüst kommt mit dem aus, was im ersten Kapitel der Grundlagen dran ist, und dein Spiel wächst mit jedem weiteren Kapitel.
So arbeitest du
In den beiden Lernpfaden Grundlagen der Programmierung mit Java und Erweiterungen der Programmierung mit Java lernst du die Ideen der Programmierung: Variablen, Verzweigungen, Felder, Klassen, Stapel, Bäume und vieles mehr. Dort kommen sie meist ohne Spiel vor. Nach jedem Kapitel kommst du hierher und baust das Neue in dein Spiel ein.
Zu jedem Kapitel gibt es hier eine Seite mit Spielmechaniken: Ideen, wo das Gelernte in einem Spiel steckt. Du wählst eine davon und überträgst sie in dein Spiel, oder du erfindest eine eigene. Es gibt keine Musterlösung, denn jedes Spiel ist anders.
- Ein Spiel, ein Arbeitsbereich. Dein Spiel liegt auf der Seite Deine Werkstatt. Öffne sie in einem eigenen Tab, während du die anderen Seiten liest. Was du dort änderst, bleibt in deinem Browser gespeichert.
- Sichere deinen Stand mit dem Knopf „Workspace in Datei speichern“. So geht er nicht verloren und kommt mit auf einen anderen Rechner.
- Im Buch oder auf deinem Rechner. Das Projekt läuft hier im Browser und genauso in einer Java-Entwicklungsumgebung auf deinem Rechner. Der Quelltext ist derselbe.
- Grafiken und Klänge stammen aus dem Ninja Adventure Asset Pack und liegen im Ordner
assets. Dein Programm findet sie über Pfade wieassets/actor/character/boy/sprite-sheet.png, im Buch wie auf dem Rechner.
Dein Entwicklertagebuch
Führe neben dem Spiel ein kurzes Tagebuch. Zu jeder Mechanik, die du einbaust, schreibst du drei Sätze:
- Was kann mein Spiel jetzt?
- Welche Idee aus dem Lernpfad steckt dahinter?
- Warum passt genau diese Idee, und was wäre mit einer anderen schiefgegangen?
Der dritte Satz ist der wichtigste. An ihm zeigst du, dass du die Idee verstanden hast und sie nicht nur abgeschrieben hast.
Die Seiten der Werkstatt
| Nach dem Kapitel im Lernpfad | Seite in der Werkstatt |
|---|---|
| Erste Schritte | Das Startgerüst und Grafiken und Klänge, gebaut wird in Deine Werkstatt |
| Variablen und Datentypen | Variablen und Datentypen im Spiel |
| Kontrollstrukturen | Kontrollstrukturen im Spiel |
| Methoden und Modularisierung | Methoden im Spiel |
| Felder | Felder im Spiel |
| Objektorientierung | Objektorientierung im Spiel |
| Algorithmen: Suchen und Sortieren | Suchen und Sortieren im Spiel |
| Ende der Einführungsphase | Projektrahmen |
| Qualifikationsphase | |
| Vertiefte Objektorientierung | Vertiefte Objektorientierung im Spiel |
| Felder, Referenzen und Generik | Felder, Referenzen und Generik im Spiel |
| Rekursion und Problemlösestrategien | Rekursion im Spiel |
| Lineare Datenstrukturen | Lineare Datenstrukturen im Spiel, mit ausführlichen Beispielen zu Schlange, Stapel und Liste |
| Nichtlineare Datenstrukturen | Bäume und Graphen im Spiel |
| Suchen und Sortieren | Effizient sortieren im Spiel |
| Testen und Laufzeit | Testen und Laufzeit im Spiel |
| Nebenläufigkeit (LK) | Nebenläufigkeit im Spiel |
Checkpoints
Wer länger gefehlt hat, zum Beispiel wegen eines Auslandsaufenthalts, muss nicht alles nachholen. Zu jedem Kapitel beider Lernpfade gibt es einen Checkpoint: einen Stand des Beispielspiels, der nur benutzt, was bis dahin im Lernpfad dran war. Damit steigst du wieder ein und baust von dort mit eigenen Ideen weiter.
Ein Checkpoint ersetzt deinen ganzen Arbeitsbereich. Speichere deinen eigenen Stand vorher mit „Workspace in Datei speichern“, falls du ihn noch brauchst.
Im Buch: Lade die Checkpoint-Datei herunter. Gehe dann auf die Seite Deine Werkstatt und klicke in der Entwicklungsumgebung auf „Workspace aus Datei laden“. Wähle die Datei aus.
Auf deinem Rechner: Lade das Archiv herunter und entpacke es. Es enthält das ganze Projekt mit Grafiken, Klängen und Bibliotheken.
| Nach dem Kapitel | Was das Beispielspiel dann kann | Im Buch | Auf deinem Rechner |
|---|---|---|---|
| Erste Schritte | Figur, Hindernisse, Münzen | Start | Start |
| Variablen und Datentypen | Münzzähler, Countdown | Variablen | Variablen |
| Kontrollstrukturen | Steinrahmen per Schleife, Gewinnen und Verlieren | Kontrollstrukturen | Kontrollstrukturen |
| Methoden und Modularisierung | dasselbe, in Methoden zerlegt | Methoden | Methoden |
| Felder | die Welt aus einem Plan | Felder | Felder |
| Objektorientierung | eigene Klassen, Gegner, Leben | Objektorientierung | Objektorientierung |
| Algorithmen: Suchen und Sortieren | neue Runde, sortierte Bestenliste | Suchen und Sortieren | Suchen und Sortieren |
| Vertiefte Objektorientierung | Gegenstände und Gegner mit abstrakter Oberklasse | Vertiefte OOP | Vertiefte OOP |
| Felder, Referenzen und Generik | Gitter neben der Bühne, versteckte Fallen | Felder und Referenzen | Felder und Referenzen |
| Rekursion | Flutfüllung findet eingemauerte Münzen | Rekursion | Rekursion |
| Lineare Datenstrukturen | Meldungen in einer Schlange, Spur auf einem Stapel | Lineare Datenstrukturen | Lineare Datenstrukturen |
| Nichtlineare Datenstrukturen | Wache mit Entscheidungsbaum | Bäume | Bäume |
| Suchen und Sortieren (Q) | Tiefensortierung in jedem Bild | Sortieren | Sortieren |
| Testen und Laufzeit | Punkteregel mit Kombo und Tests | Testen | Testen |