Kursliste

Kursbeschreibung

Jahrgangsstufe:

7

Fach:

Informatik im Rahmen von Natur und Technik

Lehrplan:

 

Zeitbedarf:

ca. 10 Unterrichtsstunden

Intention:

Es handelt sich um einen Begleit-Kurs zum Themenkomplex Algorithmik. 

Behandelte Inhalte:

Vorgefertigte Aufgaben mit kleinen Gif-Animationen unterstützen die Schüler beim Erfassen der Aufgabenstellungen. Besonderes Augenmerk wurde auf gegenseitige Rückmeldung durch die Schüler selbst, im Sinne eines Peer-Assesments gelegt.

Autor:

Thomas Hafner, Schmuttertal-Gymnasium Diedorf (hafnerthomas@gmx.de)

Alexandra Hain, Clavius-Gymnasium Bamberg

Copyright


Creative Commons Lizenzvertrag
Dieses Werk ist lizenziert unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 4.0 International Lizenz.


In diesem Kurs werden wir ein erste kleine Anwendung in C# entwickeln !

Vom "Lastenheft" über das "Pflichtenheft" bis zur Programmierung in C# und der Anbindung einer Datenbank !








In diesem Kurs lernen wir, wie man mit C# und Visual Studio ein voll funktionsfähiges Breakout-Spiel erstellt/entwickelt.

Wir verwenden  keine anderen Bibliotheken wie XNA, MonoGame, DirectX oder andere.

Wir werden eine Windows-Formularanwendung in C#-programmierung, um das Spiel von Grund auf neu zu erstellen.

"Karel The Robot" ist eine einfache Lernumgebung zum Erlernen von Programmiergrundlagen. 

In den 1970er Jahren entschied ein Stanford-Absolvent namens Richard Pattis, dass es einfacher wäre, die Grundlagen der Programmierung zu vermitteln, wenn die Studenten die grundlegenden Ideen in einer einfachen Umgebung ohne die Komplexitäten, die die meisten Programmiersprachen charakterisieren, irgendwie lernen könnten.


In anspruchsvollen Sprachen wie z.B. Java oder C# gibt es so viele Details, dass das Erlernen dieser Details oft im Mittelpunkt des Unterrichts steht.  Durch den Einstieg bei Karel können Sie sich von Anfang an auf die Lösung von Problemen konzentrieren. Und weil Karel Fantasie und Kreativität fördert, kann man ganz viel Spaß dabei haben.

"Karel the Robot" war ein ziemlicher Erfolg und wurde in einführenden Informatikkursen eingesetzt und hat Millionen von Studenten begeistert. Viele Generationen von Stanford-Studenten haben gelernt, wie das Programmieren mit Karel funktioniert, und es ist auch heute noch die "sanfte Einführung in die Programmierung", die bei Stanford verwendet wird.

Das Karel Projekt wurde dann auch zunehmend - aufgrund der Unzufriedenheit mit den verfügbaren Lernumgebungen - bei uns in Deutschland an den Unis eingesetzt. Seitdem wurden über dieses Projekt tausende deutsche Studenten an die Grundlagen der imperativen Programmierung herangeführt.



Computer erledigen vielfältigste Aufgaben automatisiert, ohne dabei müde zu werden oder sich zu langweilen. Sie müssen nur einmal für die jeweiligen Aufgaben programmiert werden. Wie so etwas geht, soll hier gezeigt werden. Dabei werden wir uns in diesem Kurs eher kleinere Projekte vornehmen, die mit imperativer Programmierung adäquat bearbeitet werden können. Ziel ist es, konkrete Automatisierungsprobleme zu bearbeiten und dabei die Bausteine der imperativen Programmierung einzuführen.



Ist man eigentlich noch fahrtüchtig, wenn man 2 Liter eines Biermixgetränks auf einer Party getrunken hat?

Das lässt sich leicht mit einem Promillerechner überprüfen. Ein solcher Promillerechner liefert eine Abschätzung des Blutalkoholgehalt (in Promille).



Was meinst du, wieviele Promille liefert der Promillerechner in der vorgegebenen Situation?

Wir werden im Folgenden einen einfachen Promillerechner selbst entwickeln. Dieser Promillerechner soll Eingaben, die der Benutzer macht, automatisiert auswerten und das Ergebnis auf dem Bildschirm ausgeben.


Wir wollen in dieser Kursreihe die Programmiersprache Python auf "spassige" Weise kennenlernen und werden im Folgenden ein Spiel programmieren.

Es wird im Verlauf des Kruses kontinuierlich erweitert und verbessert. Ergänzend wird immer nur soviel Theorie gelehrt, wie es für den nächsten Schritt des Projektes gerade nötig ist.

Hier zunächst eine kleine "Anforderungsdefinition" für das Spiel mit einem Beispiel und dann erkläre ich die weiteren Ausbaustufen des Projektes :

Nach Aufruf des Programms wird dem Benutzer eine Kopfrechenaufgabe gestellt. Er gibt das von ihm ermittelte Ergebnis ein, und das Programm bewertet seine Eingabe.


Die Aufgabe: 9 + 26

Bitte eine Zahl eingeben:

34

34 ist falsch

Bitte eine Zahl eingeben:

35

35 ist richtig

Ergebnis: 35

Anzahl Versuche: 2


Sieht erst einmal trivial aus...Ist es aber nicht !

Ich werde in dem Lernprojekt zunächst die Einstiegsschwelle sehr niedrig halten, damit sie alle einen leichten Einstieg haben. Aber die Lernkurve wird dann sehr schnell steil ansteigen !

Das Spiel wird in mehreren Einzelschritten erstellt. Zunächst entsteht eine ganz einfache Version.

Mit zunehmenden Programmierkenntnissen entwickeln Sie immer komplexere Versionen.

Unter anderem soll das Spiel  um die folgenden Möglichkeiten erweitert werdem :


  •     Es werden mehrere Aufgaben gestellt.
  •     Die benötigte Zeit wird gemessen.
  •     Der Name des Spielers und die benötigte Zeit werden als Highscore-Liste dauerhaft in einer            Datei  oder einer Datenbank gespeichert.
  •     Die Highscore-Liste wird mit neuen Ergebnissen aktualisiert und auf dem Bildschirm                 dargestellt.
  •     Es gibt eine Version auf einer grafischen Benutzeroberfläche.
  •     Es gibt eine Version, die das Spielen im Internet ermöglicht.