> Ansonsten ist es sehr wichtig, das die Schüler nicht nur einfach stur > die Sprache lernen, sondern die dahinter stehenden Konzepte und die zu > implementieren Algorithmen verstehen. Dann ist nämlich der Umstieg auf > eine andere Sprache sehr leicht und beschränkt sich auf das Lernen der > neuen Syntax und eventueller Caveats.
Genau das ist ja der entscheidende Punkt... Am Anfang des Kurses geht es eben um den Entwurf einfacher Algorithmen, im Fall von Niki, dem Roboter, wurde eben ein Roboter programmiert, der durch ein Labyrinth läuft. Schön in ASCII-Art, so dass am sich auf das Wesentliche konzentrieren konnte. Die Programmierung erfolgte in Pascal, was schrittweise zu einer vollständigen Sprach entwickelt wurde, wobei die Sprache immer im Hintergund stand. Vermittelt wurden stattdessen Konzepte der Abstraktion und des "algorithmischen Denkens". Die Sprache wurde eher nebenbei erlernt. Der Vorteil des Niki-System bestand IMHO darin, dass man die Auswirkungen seines Tuns (hier: des Codes) an den Bewegungen des Roboter mitverfolgen konnte, ggf. auch mit schrittweise Programmausführung zum Debugging. Endlos-Schleifen erkannte man dadurch, dass der Roboter irgendwann im Kreis durch das Labyrinth lief, Fehler darin, dass er vor die Wand stieß oder oder "Futter" an Plätzen aufnahm, an denen keine lag. So war es bereits nach 24 Unterrichtsstunden im Grundkurs der 11. Klasse gelungen Rekursion vorzustellen. Wir hatten ein Problem, bei dem sich der Roboter hätte merken müssen, wie viele Schritte er vorwärts gegangen war, um die gleich Anzahl wieder zurückzugehen. Zu diesem Zeitpunkt kannten wir aber noch keine Variablen. Im Projekt am Ende des 13. Jahres entwickelten wir Spiele, wie 4 gewinnt (für die schwächeren Schüler), Reversi oder Mühle. Auch hier lag der Schwerpunkt auf Analyse "korrekter Zug" und der Strategie, die der Computer als Gegner verfolgen kann, nach dem vorher Konzepte wie das Negmax-Verfahren erarbeitet worden waren. Aber zurück zum Thema: Es ist nicht Ziel des Unterrichts, Programmierkünstler zu schaffen. Es iost auch nicht wichtig, ob sie die gewählte Sprache nachher praktisch nutzen können. Wenn sie eine Sprache erlernt haben, z.B. (aber bestimmt nicht die Topwahl, so war es bei uns) objektorientiertes Pascal (kein Delphi!), können sie ihre Erfahrung leicht auf andere Sprachen übertragen und auch erkennen, was an diesen anders ist. Ein Niki-Ähnliches System würde ich deshalb gern einsetzen, weil die Rückschläge nicht Segmentation Fault oder "das Programm reagiert nicht mehr" heißen, sondern richtig erlebt werden. Man kann den Ablauf seines Programms live erleben. Ferner war nur ein einfacher Texteditor zu bedienen sowie ein "Malprogramm" für das Labyrinth. Ich halte dies für die Schule geeigneter, als mit semantischer Analyseoder objektorienter Modellierung zu beginnen. Die Schüler haben übrigens z.T. noch nie einen Computer benutzt und sollen das konkrete System auch gar nicht wirklich kennenlernen. Sie sollen Fähigkeiten und Einblicke sowie Denkweisen erlernen, die Ihnen nach Möglichkeit ihr Leben lang helfen, auch wenn sie nie mehr etwas mit Informatik zu tun haben werden. Was nützt es heute einem Schüler, wenn er vor 10 Jahren Meister in DOS und QBasic war? Gar nichts. Weil er sich zu sehr mit dem konkreten System (DOS) und einer "armen" Sprache (Basic) beschäftigt hat. Viele Grüße Michael -- Haeufig gestellte Fragen und Antworten (FAQ): http://www.de.debian.org/debian-user-german-FAQ/ Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED] mit dem Subject "unsubscribe". Probleme? Mail an [EMAIL PROTECTED] (engl)