Informationen zum Unterrichtsplan
- Klassen: 8–12 (Schüler:innen müssen mindestens 13 Jahre alt sein, um an diesem Unterrichtsplan teilnehmen zu können)
- Umfang des Unterrichts: 1 Stunde
- Verwendetes Tool: Fortnite-Kreativmodus
- Unterricht/Lernumgebung: Jeweils ein Fortnite-fähiges Gerät mit Internetverbindung pro Schüler:in. Ein Computerraum oder mobiler Laptopwagen sollte die ideale Lernumgebung sein.
Kontakt
Verfasser: Steven Isaacs und Brian Dickman
E-Mail-Adressen: [email protected] | [email protected]
Twitter: @mr_isaacs | @cleverlike
LinkedIn: www.linkedin.com/in/steve-isaacs | www.linkedin.com/in/cleverlike
BESCHREIBUNG DES UNTERRICHTS/DER LERNUMGEBUNG
Diese Lektion sollte im Rahmen der Hour of Code während der Computer Science Education Week (Bildungswoche für Informatik) verwendet werden.
Diese Übung kann für sich allein stehen oder in Verbindung mit anderen Aktivitäten Teil eines größeren Projekts sein.
Der Verfasser Steve Isaacs ist Education Program Manager bei Epic Games. In dieser Funktion unterstützt er Lehrkräfte und Schüler:innen von Sekundarschulen dabei, Werkzeuge wie z. B. die Unreal Engine, den Fortnite-Kreativmodus und Twinmotion im Klassenzimmer einzusetzen. Vor seiner Stelle bei Epic lehrte Steve Isaacs Spieledesign und -entwicklung in einer Lernumgebung, die auf Entscheidungen basierte und die den Schüler:innen die Gelegenheit bietet, abhängig von ihren Interessen verschiedene Lösungsansätze zu verfolgen – in Sachen Inhalt und Projektmöglichkeiten.
Der Verfasser Brian Dickman hat Informatik studiert und betreibt ein Spieleentwicklungsstudio in Vollzeit, das unterhaltsame und lehrreiche Inhalte in beliebten Videospielen produziert.
Unterrichtsstundenübersicht
Habt ihr jemals darüber nachgedacht, wie Punktesysteme in Videospielen funktionieren?
Wenn ihr je Pac-Man gespielt habt, habt ihr sicher versucht, eine Bestpunktzahl zu erreichen. Durch das Sammeln der kleinen Punkte im Labyrinth erhält man Punkte im Spiel – Bonuspunkte gibt es für Obst. Wenn die Geister blau leuchten, versucht man, so viele davon zu schnappen wie möglich, da sie sukzessive mehr Punkte geben. Viele Spiele haben ein Punktesystem, das ein integraler Bestandteil des Spiels ist.
Punkte in Spielen werden mittels Variablen berechnet. Eine Variable wird zu Spielbeginn festgelegt, verändert sich aber im Lauf des Spiels entsprechend der Aktionen, die sich auf den Punktestand auswirken.
In dieser Lektion sollen die Schüler:innen ein Punktesystem mittels Variablen erstellen. Das ist nur eine von vielen Arten, wie Variablen beim Programmieren zum Einsatz kommen.
Angestrebte Ergebnisse
Welche Lernziele bestehen für die Schüler:innen?
ZENTRALE FRAGEN/IDEEN
Können die Schüler:innen Konzepte der Informatik im Rahmen einer aussagekräftigen Aktivität erlernen, statt Syntax als abgegrenzte Fähigkeit zu lernen?
Wird das Erlernen von Informatikkonzepten wie Funktionen über eine Aktivität im Fortnite-Kreativmodus dazu führen, dass man dieses Konzept auch in einem Programmierungsumfeld versteht?
Können den Schüler:innen Konzepte der Informatik mittels Spielmechaniken vermittelt werden?
Werden die Schüler:innen motivierter sein, Informatikwissen zu erlernen, wenn dies in einer Spielumgebung geschieht?
Lernaktivitäten
Einführung in Variablen
Bei einer Variable handelt es sich beim Programmieren um einen veränderbaren Wert. Dies hängt von Bedingungen ab oder von Informationen, die an das Programm weitergegeben werden. Ein Programm besteht im Normalfall aus Anweisungen, die dem Computer sagen, was er zu tun hat, und Daten, die das Programm bei seiner Ausführung nutzt. Diese Daten bestehen aus Konstanten (feste Werte), die sich niemals verändern, und variablen Werten (üblicherweise anfänglich 0 oder ein Standardwert, weil die tatsächlichen Werte von Benutzer:innen des Programms festgelegt werden). Sowohl Konstanten als auch Variablen werden für gewöhnlich als bestimmte Datentypen definiert. Jeder Datentyp gibt das Datenformat vor und schränkt dieses ein. Ein Datentyp kann beispielsweise eine Ganzzahl sein, die als Dezimalzahl ausgedrückt wird, oder eine Abfolge von Buchstaben, im Regelfall mit Zeichenbegrenzung.
– Quelle: WhatIs.com
Bei einem Punktesystem beispielsweise könnte man den Startwert des Punktestands auf 0 setzen. Mit jeder gesammelten Münze könnte sich die Punktzahl um 10 erhöhen. Wenn die Spieler:innen mindestens 100 Punkte haben, gewinnen sie und das Spiel endet. Wenn sie weniger als 100 Punkte haben, geht das Spiel so lange weiter, bis sie mindestens 100 Punkte haben.
Pseudocode beschreibt das simulierte Schreiben von Code zum Darstellen des Konzepts, das der Code repräsentieren soll. Pseudocode stellt die allgemeine Struktur dar, befolgt aber nicht notwendigerweise die richtige Syntax. Für diese Lektionen werden wir hin und wieder Pseudocode verwenden, um Konzepte zu veranschaulichen. Das könnte in etwa so aussehen:
Variable festlegen var score=0 10 Punkte pro Goldmünze vergeben Schleife beginnen Münzstand abfragen Hat Spieler:in eine Goldmünze? Wenn JA, Punktzahl = Punkte +10 Schleife erneut durchlaufen Schleife durchlaufen, bis Spieler:in 100 Punkte hat Schleife beginnen Münzstand abfragen Hat Spieler:in eine Goldmünze? Wenn JA, 10 Punkte zur Punktzahl der/des Spieler:in addieren und Münze entfernen Hat Spieler:in mindestens 100 Punkte? Wenn JA, angeben, dass Spieler:in gewonnen hat Spiel beenden Schleife erneut durchlaufen, WENN Punktzahl unter 100 liegt Restliches Programm weiter ausführen, bis Spieler:in mindestens 100 Punkte hat
Nachfolgend einige Videos, die Variablen im Kontext des Programmierens erklären:
Variablen können in jeder Programmiersprache verwendet werden – und auch in Umgebungen wie dem Fortnite-Kreativmodus, wo ein Szenario erstellt werden kann, in dem sich ein Wert im Laufe des Spiels verändern kann.
Lernaktivitäten
Die Schüler:innen sollen ein Schatzsuche-Rennen im Fortnite-Kreativmodus erstellen. Hierbei suchen die Spieler:innen die Insel nach Schätzen (Münzen) ab. Das Spiel endet, wenn die Spieler:innen eine bestimmte Anzahl an Münzen gesammelt haben oder wenn die Zeit abgelaufen ist. Das Schatzsuche-Rennen sollte Variablen und Punktzahl enthalten, um den Wert/die Punkte anhand der gesammelten Münzen zu berechnen.
Im Lehrerleitfaden kann eine schrittweise Anleitung dieser Aktivität nachgelesen werden.
Die Schüler:innen sollten sich während dieser Übung am Schülerleitfaden orientieren.
Zusätzliche Lernaktivitäten
Wenn es die Zeit zulässt, sollten sich die Schüler:innen an folgende Herausforderungen wagen:
- Neue Gegenstände mit anderem Punktewert hinzufügen
- Sprintgeschwindigkeit der Spieler:innen über das „Teameinstellungen- und -inventar“-Gerät erhöhen
- Spiel so anpassen, sodass einzelne Spieler:innen das Ziel vor Ablauf des Zeitlimits erreichen können
- Die Punktzahl mittels eines Punkteanpassung-Geräts auf 0 zurücksetzen, wenn ein spezifischer Gegenstand aufgesammelt wurde
Im Lehrerleitfaden kann eine schrittweise Anleitung dieser Aktivität nachgelesen werden.
EXTERNE LEHR- UND HILFSMITTEL
CS Principles: Intro to Variables Part 1
CS Principles: Intro to Variables Part 2
Bildungsstandards
CSTA-Standards für Schüler:innen
1A-AP-09 Darstellen der Art und Weise, wie Programme Daten speichern und verändern, durch Zahlen und andere Symbole, die Informationen repräsentieren.
1B-AP-09 Erstellen von Programmen, die Daten mittels Variablen speichern und modifizieren.
1B-AP-10 Erstellen von Programmen, die Abfolgen, Ereignisse, Schleifen und Bedingungen enthalten.
1B-AP-12 Bearbeiten, Umbauen oder Implementieren von Teilen eines bereits existierenden Programms in die eigene Arbeit, um etwas Neues zu entwickeln oder einem vorhandenen Werk fortgeschrittenere Funktionen hinzuzufügen.
1B-AP-15 Testen und Debuggen (Fehler identifizieren und beheben) eines Programms oder Algorithmus, um zu gewährleisten, dass es bzw. er ordnungsgemäß ausgeführt wird.
2-AP-1 Erstellen eindeutig bezeichneter Variablen, die verschiedene Datentypen repräsentieren, und Verändern ihrer Werte.
2-AP-10 Verwenden von Flussdiagrammen und/oder Pseudocode, um komplexe Probleme in Form von Algorithmen zu lösen.
2-AP-13 Aufspalten von Problemen und Unterproblemen in Teile, um die Entwicklung, Implementierung und Prüfung von Programmen zu vereinfachen.
2-AP-17 Systematisches Testen und Verbessern von Programmen unter Verwendung verschiedener Testfälle.
3A-AP-13 Erstellen von Prototypen, die Algorithmen zur Lösung von Informatikproblemen verwenden, indem auf das bestehende Wissen der Schüler:innen und ihre persönlichen Interessen zurückgegriffen wird.
3A-AP-16 Entwerfen und schrittweises Entwickeln von Computerkreationen für praktische Zwecke, um sich auszudrücken oder um ein gesellschaftliches Problem zu behandeln, wobei Ereignisse verwendet werden, um Anweisungen zu geben.
3A-AP-17 Aufteilen von Problemen durch systematische Analyse in kleinere Komponenten mithilfe von Konstrukten wie Prozeduren, Modulen und/oder Objekten.
3A-AP-22 Entwerfen und Entwickeln von Rechenartefakten mithilfe von kollaborativen Werkzeugen und Teamarbeit.
ESSENZIELLE FÄHIGKEITEN IM 21. JAHRHUNDERT UND FÄCHERÜBERGREIFENDE THEMEN
Diese Lektion behandelt Bereiche mit Bezug auf Programmieren und Informatik.
Essenzielle Fähigkeiten im 21. Jahrhundert:
- Kritisches Denkvermögen
- Kreativität
- Zusammenarbeit
- Kommunikation
- Technologiebewandertheit
- Flexibilität
- Führungsstärke
- Initiative
- Soziale Kompetenz
ÄNDERUNGEN FÜR BESONDERE FÄLLE
Der Unterrichtsplan kann für Schüler:innen mit besonderen Bedürfnissen oder Voraussetzungen angepasst werden.
Die Schüler:innen können in Gruppen zusammenarbeiten und einen gemeinsamen Programmierungsansatz verfolgen.
Den Schüler:innen kann ein Beispiel zur Verfügung gestellt werden, das sie dann untersuchen oder modifizieren können.
Falls nötig können adaptive Controller oder andere Eingabegeräte ausgeteilt werden.