Unterrichtskonzept
Inhaltsverzeichnis
Am Anfang war die Idee
Spiele programmieren war schon immer ein Thema, das Schüler im Informatik-Unterricht angesprochen hat. Aber nur all zu schnell war die erste Begeisterung bei den Schülern verflogen und der Frust bzgl. technischer Schwierigkeiten überwog. Die Engine Alpha selbst entstand ursprünglich aus vielen - oft wie oben beschrieben missglückten - Unterrichtseinheiten in verschiedenen Jahrgangsstufen. Das Ziel war das Eliminieren technischer Schwierigkeiten indem diese in nach außen einfache Klassen oder Prinzipien "verpackt" wurden. Immer wiederkehrende Probleme und Aufgaben wurden in einem "Baukasten-Prinzip" zusammengetragen. Immer wiederkehrende Verständnis-Probleme der Schüler trugen nach und nach zur methodisch und didaktisch immer weiter aufbereiteten und auf das Wesentliche bzgl. eines Verstehens der zugrunde liegenden Konzepte reduzierten EDU-Variante der Engine Alpha bei. Rund um diese recht einfachen Bausteine entstanden über mehr als 10 Jahre Unterrichtseinheiten, welche sich zu bewähren schienen. Immer mehr Kollegen, aber auch Referendare, Studenten und Schüler brachten kreative Ideen mit ein.
Das didaktische Konzept
Grundlegende Idee hinter dem Aufbau der EDU-Variante der Engine Alpha ist, dass die Schüler in jeden Themen-Bereich sukzessive vom ersten grundlegenden Verständnis des Prinzips über vertiefte Betrachtungen hin zum technischen Verständnis angeleitet werden können. Kein Schüler muss technische Details aus der Java-Api kennen um dem Unterricht zu folgen, auch der Lehrer zunächst nicht. Möchte man nicht nur den vorbereiteten Unterrichtseinheiten folgen sondern selbst kreative Ideen umsetzen, so sollte man sich mit der eigentlichen (nicht EDU) Engine Alpha auseinander setzen. Dies geschieht am einfachsten, indem man neben den Code-Beispielen im Wiki auch besonders den freien Quellcode der EDU-Variante der Engine Alpha durchliest. Er zeigt schon mehr technische Details bzgl. der zugrunde liegenden Prinzipien, aber hält die rein technischen Java-Details noch außen vor. Diese Ebene reicht, um mit der Engine Alpha seiner Phantasie als Schüler und insbesondere als Lehrer freien Lauf zu lassen.
Für technisch sehr interessierte Schüler oder Lehrer stellt der Quellcode der eigentlichen (nicht EDU) Engine Alpha einen großen und weitläufigen Fundus dar für Prinzipien, welche später in der Oberstufe oder auch erst im Studium vermittelt werden. Der Code ist durchgängig äußerst ausführlich und verständlich dokumentiert. Man findet sehr viele bekannte Code-Patterns (Singleton, Observer, Composite, ...) in funktionierenden Code-Beispielen vor.
Unterrichtsmaterial
Die Unterrichtseinheiten, welche auf der Web-Präsenz zu finden sind, stellen erprobte und bewährte Sequenzen dar, welche von unterschiedlichen Lehrern ersonnen und angefertigt wurden. Stetig werden sie bei jedem weiteren Einsatz - basierend auf Kritik und Anregung von Schülern und Lehrern - immer wieder ergänzt und verbessert.
Das Material unterliegt der CreativCommons-Lizenz (CC BY-NC-ND 3.0) [1].
Das bedeutet in Kurzform:
- Sie dürfen das Material nicht-kommerziell nach Belieben im Unterricht nutzen und verbreiten.
- Die Namen der Autoren müssen dabei aber immer genannt und weitergegeben werden.
- Genehmigung für kommerzielle Vermarktung kann gesondert angefragt werden.
Es gibt eine durchgängige Unterrichtssequenz, die versucht, den Lehrplan der 10. Jahrgangsstufe des bayerischen Gymnasiums abzudecken. Entsprechend gibt es auch einige angeleitete Unterrichtsprojekte über mehrere Stunden, welche von den Schülern in Einzel- oder auch Gruppenarbeit bewerkstelligt werden können. Einheiten zur Vertiefung einzelner Themengebiete (Vererbung, Arrays, ...) sind ebenso vorhanden.
Eine gesteigerte Motivation der Schüler setzt allerdings voraus, dass jeder Lehrer die Aufträge der Schüler ausführlich selbst durchgeführt haben muss um im Unterricht souverän auf z.B. Compiler-Meldungen oder bei Fragen bzgl. der konkreten Realisierung in Java reagieren zu können.
Jeder, der dieses Material benutzt ist ausdrücklich dazu aufgerufen, Kritik, Erfahrungen, Anregungen, Zusatzmaterial, etc. an uns zurück zu senden und damit selbst aktiv zur Erweiterung und Qualitätsverbesserung dieser Unterrichtssequenzen beizutragen.
10. Klasse
Hier findest du die einzelnen Bausteine des Unterrichtskonzepts:
- OOM-OOP_1.pdf
- Uebung_OOM-OOP-Baum.pdf
- Uebung_OOM-OOP-Fuhrpark.pdf
- Projekt_PingPong_neu.pdf
- OOM-OOP_2.pdf
- Projekt_Staubsauger.pdf
- Vererbung-Teil-2.pdf
In den Unterrichtsmaterialien erwähnte BlueJ-Projekte als Vorlage:
- Greifroboter
- alphaFormen
- alphaFormen_Zeichnung
- Ampel_Vorlage
- JavaKarol
- BaumSimulation_Vorlage
- Auto_Vorlage
- PingPong_Vorlage
- Staubsauger_Vorlage
- Kamele_Vorlage
In den Übungen zum Unterrichts-Skript wird auf folgende Programmier-Hilfsmittel Bezug genommen:
(Rechtsklick --> Ziel speichern unter)
- JAVA-Klassen-Datei: BILD.java
- JAVA-Klassen-Datei: WECHSELBILD.java
- JAVA-Klassen-Datei: SPIEL.java
- JAVA-Klassen-Datei: SOUND.java
(Wenden Sie sich als Lehrkraft bei Interesse an OStR Michael Ganshorn, mike underscore gans at yahoo dot de
Weitere Übungs- und Lernmaterialien:
Name | Typ | ab Seite |
---|---|---|
Grundbegriffe der objektorientierten Modellierung - 1 | Zuordnungs-Übung | ab Seite 2 |
Grundbegriffe der objektorientierten Modellierung - 2 | Kreuzwort-Rätsel | ab Seite 2 |
Daten-Typen in JAVA - 1 | Zuordnungs-Übung | ab Seite 4 |
Daten-Typen in JAVA - 2 | Lückentext | ab Seite 4 |
Fachbegriffe JAVA - 1 | Zuordnungs-Übung | ab Seite 8 |
Fachbegriffe JAVA - 2 | Zuordnungs-Übung | ab Seite 8 |
Fachbegriffe der Objektorientierte Modellierung - 3 | Kreuzwort-Rätsel | ab Seite 8 |
Klassen in JAVA - 1 | Test | ab Seite 8 |
Klassen in JAVA - 2 | Baustein-Übung | ab Seite 8 |
Klassen in JAVA - 3 | Lückentext | ab Seite 8 |
Fachbegriffe zur Vererbung | Kreuzwort-Rätsel | ab Seite 10 |
Fachbegriffe - JAVA - 1 | Zuordnungs-Übung | ab Seite 10 |
Fachbegriffe - JAVA - 2 | Zuordnungs-Übung | ab Seite 10 |
Vererbung in JAVA - 1 | Zuordnungs-Übung | ab Seite 10 |
Vererbung in JAVA - 2 | Lückentext | ab Seite 11 |
Vererbung in JAVA - 3 | Zuordnungs-Übung | ab Seite 11 |
Kapselung in JAVA | Lückentext | ab Seite 13 |
Verständnisfragen | Test | ab Seite 14 |
Struktogramme bedingter Anweisungen | Zuordnungs-Übung | ab Seite 16 |
bedingte Anweisungen in JAVA - 1 | Zuordnungs-Übung | ab Seite 17 |
bedingte Anweisungen in JAVA - 2 | Baustein-Übung | ab Seite 17 |
Fachbegriffe | Kreuzwort-Rätsel | ab Seite 18 |
Vererbung / Überschreiben in JAVA - 1 | Zuordnungs-Übung | ab Seite 20/21 |
Vererbung / Überschreiben in JAVA - 2 | Lückentext | ab Seite 20/21 |
Zählschleife in JAVA | gemischte Übungen | ab Seite 22/23 |
Operatoren in JAVA - 1 | Zuordnungs-Übung | ab Seite 24 |
Operatoren in JAVA - 2 | Lückentext | ab Seite 24 |
Schleifen | Test | ab Seite 25 |
Mini-Projekt AMPEL | Hilfestellung | ab Seite 26 |
Unterrichtsprojekt: PingPong
- Anleitung als PDF
- Vorlage als BlueJ-Projekt
- fertiges Spiel als jar-Datei
Unterrichtsprojekt: Staubsauger-Roboter
- Anleitung als PDF
- Vorlage als BlueJ-Projekt
- fertiges Simulation als jar-Datei
Unterrichtsprojekt: BreakOut
- Anleitung als PDF
- Vorlage als BlueJ-Projekt
- fertiges Spiel als jar-Datei
11. Klasse
Unterrichtsprojekt: Snake
- keine Anleitung:
- Die Schüler sollen selbst modellieren und kreativ werden.
- Tipp:
- Entweder die im Unterricht erstellte Struktur SCHLANGE verwenden.
- Oder die generische Klasse java.util.LinkedList verwenden.
- Vorlage:
- Entweder RECHTECK und SPIEL aus der EDU-Variante
- Oder mit der Core-Variante
- fertiges Spiel als jar-Datei