UV 7.4 Vom Programmbaustein zum Computerspiel – wie programmiert man einfache Animationen und Spiele?
Leitfragen:
|
Ausschärfung der Inhaltsschwerpunkte:
|
Vorhabenbezogene Konkretisierung:
Nach Beschluss der Fachkonferenz sammeln die Schülerinnen und Schüler erste Erfahrungen mit einer Programmiersprache, der objektorientierten Denkweise und dem Entwurf algorithmischer Abläufe über die Arbeit mit der visuellen Entwicklungsumgebung Scratch.
Ausgehend von der Demonstration fertiger und das individuelle Erproben weiterer Beispiele, werden gemeinsam typische Details der Lernumgebung herausgehoben (Bühne, Blockpalette, Figurenliste, Programmierbereich). Die ersten Beobachtungen der Beispiele gehen dabei aus von einfachen verbalen Erklärungen der Animationen und der beteiligten Objekte und münden in ersten Analysen des Verhaltens von Objekten und der Beschreibung einzelner Aktivitäten in Form von Algorithmen. Mit den Schülerinnen und Schülern wird schrittweise herausgearbeitet, dass die Scratch-Welt aus einer Bühne besteht, auf der einzelne oder mehrere Figuren als Objekte alleine oder miteinander agieren können. Jedes Objekt hat einen Namen und der Zustand eines Objektes wird durch seine Eigenschaften bestimmt, die im Objektfenster angezeigt werden. Die Steuerung von Scratch-Objekten erfolgt mit Hilfe von Anweisungen, die in Form von graphischen Blöcken dargestellt und miteinander kombiniert werden. Programme in Scratch (Scratch-Skripte) sind immer an Objekte gebunden und werden erst ausgeführt, wenn bestimmte Ereignisse eintreten.
Im weiteren Unterrichtsgang wird geklärt, dass jedes Objekt nur bestimmte Zuständigkeiten hat und zum Verhalten und zur Struktur des Gesamtsystems beiträgt. Die Objektstrukturen werden zusätzlich durch Objektdiagramme verdeutlicht, in denen die Eigenschaften, die aktuellen Eigenschaftswerte und die Zuständigkeiten eingetragen werden. Mit komplexer werdenden Problemen werden Kontrollstrukturen eingeführt, die innerhalb der Zuständigkeiten bei Abläufen die Ausführungsschritte festlegen. Als wesentliche Kontrollstrukturen werden die Fallunterscheidung, die Wiederholung sowie die Sequenzbildung herausgestellt. Interessierte Schülerinnen und Schüler erhalten dabei die Möglichkeit, unterschiedliche Varianten der Kontrollstrukturen zu erproben. Eingegangen wird in passenden Zusammenhängen auf die Formulierung und Bedeutung von Bedingungen und auf Attribute als zu einem Objekt gehörende Variable. Auch hier bieten sich für Schülerinnen und Schüler viele Differenzierungs- und Vertiefungsmöglichkeiten.
Bei umfangreicheren Modellierungsaufgaben benutzen die Schülerinnen und Schüler in den Entwurfs- und Dokumentationsphasen Objektdiagramme, um in einem zu entwickelnden Gesamtsystem die Zuständigkeit beteiligter Objekte für bestimmte Verhaltensmuster fest zu legen. Die Modellierung der Abläufe unterstützen umgangssprachliche Formulierungen mit Pseudoprogrammieranweisungen und graphische Darstellungen durch Flussdiagramme.
Den Abschluss bildet eine Projektarbeit, deren Thematik, Umfang und Dokumentation mit der Lerngruppe abgestimmt wird.
Zeitbedarf: 21 Std.
Sequenzierung des Unterrichtsvorhabens:
Unterrichtssequenzen | Zu entwickelnde (inhaltsfeldbezogene konkretisierte) Kompetenzen | Vorhabenbezogene Absprachen / Beispiele, Medien, Materialien |
---|---|---|
|
Die Schülerinnen und Schüler
|
Die Entwicklungsumgebung Scratch 1.4 ist bereits auf allen Schulrechnern installiert. Sie kann unter https://scratch.mit.edu/scratch_1.4/ heruntergeladen werden, um von den Schülerinnen und Schülern auf den eigenen Rechnern installiert zu werden. Entwicklung eines Aktions-Spieles oder einer Animation in Gruppen (Beispiele: Ampelsteuerung, Labyrinth, Breakout-Spiel) Unter http://www.funlearning.de/ ist ein Unterrichtsgang mit Scratch beschrieben. Unter den Stichworten „Modellierung von Informatiksystemen“ und „Einstiege in die Programmierung“ findet man unter http://inf-schule.de/ weitere detaillierte Unterrichtseinheiten.
Als alternative Programmierumgebungen zur Durchführung dieses Unterrichtsvorhabens bieten sich EOS oder Python an. |
Lernzielkontrolle: Dokumentation und Vorstellung der Projektarbeit |