Download - Landesinstitut für Schulentwicklung
Download - Landesinstitut für Schulentwicklung
Download - Landesinstitut für Schulentwicklung
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
ZPGMitteilungen<br />
Klassen und Objekte<br />
Objektorientierte Systementwicklung in der Jahrgangsstufe 1<br />
Der Lehrplan Informatik in den beruflichen Gymnasien hat in der Lehrplaneinheit 6 Objektorientierte<br />
Systementwicklung als Inhalt im Anschluss an die objektorientierten Analyse mit<br />
statischer Modellierung, die objektorientierte Programmierung. In der objektorientierten<br />
Programmierung werden Klassen erstellt und verwendet und Methoden programmiert.<br />
Hierzu verlangt der Lehrplan den Einsatz einer objektorientierten Programmiersprache.<br />
Konkret sollen die Schülerinnen und Schüler Objekte der realen Welt so erfassen, dass sie<br />
auch für die Informatik beschreibbar, d. h. in Programmen abbildbar sind. Gemeinsame Eigenschaften<br />
und Methoden führen dazu, dass mehrere ähnliche Objekte in einer gemeinsamen<br />
Klasse beschrieben werden können.<br />
Wenn die Theorie des Verhältnisses zwischen Klassen<br />
und Objekten klar geworden ist, lernt man im Unterricht,<br />
wie aus Klassen Objekte gebildet werden.<br />
Die Schülerinnen und Schüler lernen, dass man mit<br />
einer Klasse, die Attribute und Methoden enthält,<br />
nicht arbeiten kann, sondern erst aus dieser Klasse<br />
ein Objekt bilden muss. Die meisten Beispiele – wie<br />
der Taschenrechner, der BMIRechner, die Geldkarte<br />
– erschöpfen sich darin, in der Klasse die Methoden<br />
zu programmieren und für die Anwendung ein<br />
Objekt zu bilden. Dass der tatsächliche Nutzen des<br />
objektorientierten Paradigmas erst dann deutlich<br />
wird, wenn man mehrere Objekte bildet und diese<br />
nacheinander oder sogar gemeinsam verwendet,<br />
konnten die Schülerinnen und Schüler – wenn überhaupt<br />
– erst am Ende des Unterrichts erfahren.<br />
Beim bislang durchgeführten Unterricht haben die<br />
Schülerinnen und Schüler drei Hürden gleichzeitig zu<br />
bewältigen:<br />
• Sie müssen die Philosophie der Klassen und Objekte<br />
begreifen.<br />
• Sie müssen programmieren lernen, d. h. Abläufe,<br />
Verzweigungen und Wiederholungsstrukturen verstehen<br />
und anwenden.<br />
• Sie müssen die JavaSyntax erlernen.<br />
Wir suchten nun einen Weg, diese vielfältigen Anforderungen<br />
an die Schülerinnen und Schüler im Unterricht<br />
am Anfang zu reduzieren – und entschieden,<br />
dass der erste (und einfachste) Ansatz ist, programmieren<br />
zu lernen, ohne von komplizierten Syntaxvorschriften<br />
überfordert zu werden.<br />
Es gibt eine ganze Reihe von didaktischmethodisch<br />
ausgerichteten Programmierumgebungen, die Anfängern<br />
den Weg in das Programmieren erleichtern, indem<br />
sie nur mit Symbolen oder visuellen Programmbausteinen<br />
arbeiten. Wir untersuchten ferner, ob ein<br />
solches Programmierlernwerkzeug gleichzeitig eine<br />
Erleichterung darstellt, wenn man anschließend dieses<br />
Tool verlässt und zu Java wechselt, weil man<br />
sich auf diese objektorientierte Sprache für den Unterricht<br />
geeinigt hat.<br />
Wir sichteten zu diesem Zweck eine Reihe solcher<br />
kostenlos verfügbaren Lernumgebungen mit visueller<br />
(ikonischer) Programmierung. Das Ergebnis ist in der<br />
Tabelle von Seite 4 dargestellt und gibt einen Überblick<br />
über unsere angelegten Kriterien.<br />
Da wir den Unterricht mit Java fortsetzen wollen, untersuchten<br />
wir Robot Karol, Kara und Greenfoot genauer.<br />
Bei den grafischen Programmierwerkzeugen<br />
Robot Karol bzw. Kara werden Roboter oder Käfer in<br />
einer Welt über eine Ablaufsteuerung (also ein Programm)<br />
durch ihre Welt gesteuert und müssen in ihrer<br />
Welt eine vorgegebene Aufgabe erledigen. Die<br />
Programmbefehle und Programmstrukturen sind unmittelbar<br />
einsichtig und werden von den Schülerinnen<br />
und Schüler ohne viel Erläuterung entdeckend<br />
verstanden und gelernt. Bei unserer Untersuchung<br />
stellten wir fest, dass Robot Karol und Kara jeweils<br />
auch eine JavaVersion (JavaKarol und JavaKara) anbieten,<br />
die JavaKlassen (Klassen für die Welten und<br />
Aktoren) enthalten, die mit den zugehörigen visuellen<br />
Lernumgebungen übereinstimmen. Man kann also die<br />
im Pseudocode programmierten Aufgaben auch mit<br />
Java (z. B. im JavaEditor oder in BlueJ) lösen und<br />
dabei fertige Klassen und daraus gebildete Objekte<br />
verwenden und Methoden aus den vorher gemachten<br />
Beispielen in die JavaSyntax übertragen. Dies fällt<br />
den Schülerinnen und Schüler auf diesem Weg viel<br />
leichter, da sie die Grundstrukturen Sequenz, Wiederholung<br />
und Verzweigung schon verstanden und an<br />
mehreren Beispielen angewendet haben. Hier erfolgt<br />
der erste Einblick in die KlassenPhilosophie der Ob<br />
ZPGMitteilungen für haus und landwirtschaftliche, sozialpädagogische und pflegerische Schulen – Nr. 53 – April 2013<br />
3
<strong>Landesinstitut</strong> für <strong>Schulentwicklung</strong><br />
jektorientierung. Im nächsten Schritt können dann<br />
weitere und vor allem auch mehrere Objekte einer<br />
Klasse erzeugt werden. Danach erfolgt der Übergang<br />
auf die Erstellung eigener Klassen – und an dieser<br />
Stelle erst verlässt der Unterricht den anschaulichen<br />
Weg bewegter Figuren in einer sichtbaren Welt und<br />
die herkömmlichen Aufgaben aus den Handreichungen<br />
werden mit deutlich geringeren Verständnis und<br />
vor allem Handlingproblemen gelöst.<br />
Es ist uns klar, dass mit Hilfe dieses Einstiegs die<br />
KlassenObjektProblematik nicht von Beginn an thematisiert<br />
wird; dies erfolgt erst beim Umstieg auf JavaKarol.<br />
Wer aus methodischen Gründen diesen Weg<br />
nicht gehen will, für den ist Robot Karol nicht die geeignete<br />
Umgebung, der muss zu einem anderen<br />
Werkzeug greifen.<br />
Ein solches grafisches Programmierwerkzeug könnte<br />
dann zum Beispiel Greenfoot sein, das von Anfang an<br />
konsequent mit Klassen und Objekten arbeitet und<br />
JavaCode verwendet. Da wir mit Greenfoot noch<br />
keine praktische Unterrichtserfahrung sammeln konnten,<br />
werden wir erst in einer der nächsten Ausgaben<br />
näher auf dieses Werkzeug eingehen.<br />
Da nur Karol und Kara den oben aufgezeichneten<br />
Weg ermöglichen, mussten wir uns nur zwischen diesen<br />
beiden Systemen entscheiden. (jg, rg, us)<br />
Lernumgebungen mit visueller Programmierung – Vergleichstabelle<br />
* Insellösung = kein Übergang zur echten Programmiersprache<br />
** = direkter Methodenaufruf im Kontextmenü des Objekts möglich<br />
4<br />
ZPGMitteilungen für haus und landwirtschaftliche, sozialpädagogische und pflegerische Schulen – Nr. 53 – April 2013
ZPGMitteilungen<br />
Robot Karol<br />
Ein Roboter in einem virtuellen Raum mit Ziegeln und Quadern<br />
Das Programm Robot Karol stellt eine deutschsprachige Programmierumgebung für Robot<br />
Karol++ von Ondrej Krško (2001) bereit. Diese beruht auf der Idee Karel, the Robot von<br />
Richard E. Pattis (1981). Die Programmierumgebung stellt eine frei dimensionierbare virtuelle<br />
räumliche Umgebung zur Verfügung, in der für einen Roboter Verhaltensstrategien zur<br />
Erfüllung definierter Aufgaben programmiert werden.<br />
In dieser Welt kann sich der Roboter bewegen, er<br />
kann die Welt gestalten, indem er Ziegelsteine stapelt<br />
und abbaut – oder er kann sich durch eine vorgegebene<br />
Welt bewegen und Aufgaben lösen. Die<br />
Schülerinnen und Schüler beobachten, ob ihr Programm<br />
das leistet, was die Aufgabenstellung erfordert.<br />
Sie ändern dies, wenn es notwendig ist.<br />
Die Programmoberfläche<br />
Das Programm gliedert sich in vier Bereiche: Links<br />
oben befindet sich der Bereich Editor, in den alle Befehle<br />
eingetragen werden. Rechts daneben ist die<br />
Welt des Roboters. Diese kann wahlweise als zweioder<br />
dreidimensionale Welt angezeigt werden. Im<br />
Bereich links unten sind alle Befehle und Kontrollstrukturen<br />
als Kurzreferenz angelegt. Rechts daneben<br />
werden Informationen des Programms und Hinweise<br />
zum Programmablauf angezeigt.<br />
Die Sprache ist Deutsch, die Programmoberfläche intuitiv<br />
bedienbar. Der Roboter lässt sich mit den<br />
Schaltflächen unter dem Weltfenster direkt steuern,<br />
ebenso ist eine Bewegung über die Pfeiltasten (Cursor)<br />
möglich.<br />
Programmierung<br />
Bei der verwendeten Programmiersprache handelt es<br />
sich um einen Pseudocode mit deutschsprachigen<br />
Begriffen, die die Fähigkeiten des Roboters verständlich<br />
benennen. Zum Beispiel steht der Befehl Schritt<br />
für einen Schritt vorwärts, LinksDrehen für eine Drehung<br />
nach links, Hinlegen für das Ablegen eines Ziegelsteins.<br />
Außerdem kann der Roboter eine<br />
Markierung setzen oder wieder löschen. Karol besitzt<br />
Sensoren, um fest zu stellen, ob er sich vor einer<br />
Wand befindet oder ob er sich auf einem Ziegelstein<br />
oder einer Markierung befindet.<br />
Die Befehle können direkt im Editor eingetippt oder<br />
unter Benutzung des Kontextmenüs eingefügt werden,<br />
was die Gefahr von Schreibfehlern beseitigt.<br />
Schleifen und Unterprogramme sind möglich.<br />
Abb. 1: Dreidimensionale Weltansicht mit den direkten Steuerungstasten<br />
Abb. 2: Programmiereditor mit Kontextmenü<br />
ZPGMitteilungen für haus und landwirtschaftliche, sozialpädagogische und pflegerische Schulen – Nr. 53 – April 2013<br />
5
<strong>Landesinstitut</strong> für <strong>Schulentwicklung</strong><br />
Abb. 3: JavaKarol mit 2 Objekten<br />
Abb. 4: JavaProgramm für 2 Objekte<br />
Objektorientierte Programmierung<br />
Das Paket JavaKarol.jar liefert die Klassen Roboter<br />
und Welt für eine objektorientierte Programmierung<br />
unter Java. Die in Robot Karol erzeugten Welten<br />
können verwendet werden. Nun können auch mehrere<br />
Roboter programmiert werden, wobei den Schülerinnen<br />
und Schülern einsichtig wird, dass vor den<br />
Aktionen der Objektname (der Robotername) genannt<br />
werden muss.<br />
Technische Hinweise<br />
Systemvoraussetzungen für Robot Karol: ab Windows<br />
XP, Linux mit Emulator<br />
Für JavaKarol zusätzlich: ein JavaEditor, Java JDK<br />
und die Programmbibliothek javakarol.jar.<br />
Installation von Robot Karol: <strong>Download</strong> der Setup<br />
Datei und Installation an einem beliebigen Ort, auch<br />
im Netz. Das Programmverzeichnis kann an einen beliebigen<br />
Ort verschoben werden.<br />
In der mitgelieferten Dokumentation wird der Einsatz<br />
dieser Bibliothek unter BlueJ beschrieben; selbstverständlich<br />
kann diese auch unter allen anderen Java<br />
Entwicklungsumgebungen wie z. B. JavaEditor und<br />
Eclipse verwendet werden.<br />
Internethinweise<br />
<strong>Download</strong>, Hinweise und Beispiele<br />
www.schule.bayern.de<br />
Infos<br />
de.wikipedia.org<br />
Hinweise<br />
wiki.zum.de/Robot_Karol<br />
Literatur<br />
(1) Richard E. Pattis, Jim Roberts and Mark Stehlik:<br />
Karel the Robot: A Gentle Introduction to The Art of<br />
Programming (ISBN: 0471597252).<br />
(2) Dag Pechtel: Softwareentwicklung. Schülerbuch:<br />
Strukturiert programmieren mit Robot Karol und<br />
PHP (ISBN13: 9783142225241).<br />
Zur Einführung stehen einfache und komplexe Beispiele<br />
zur Verfügung. Ein Handbuch ist auf der<br />
<strong>Download</strong>Seite von Robot Karol im PDFFormat erhältlich.<br />
6<br />
ZPGMitteilungen für haus und landwirtschaftliche, sozialpädagogische und pflegerische Schulen – Nr. 53 – April 2013
ZPGMitteilungen<br />
Kara<br />
Ein Marienkäfer allein im Wald<br />
Kara ist ein Marienkäfer, der in einer zweidimensionalen Welt lebt. Das Programm wurde in<br />
der Schweiz für unterrichtliche Zwecke entwickelt; das Konzept beruht auf Robot Karol.<br />
Anstelle eines Roboters wird in diesem Produkt ein Lebewesen programmiert, das in<br />
direkter Tradition zu Robot Karol steht und nichts anderes ist als ein programmierbarer Automat.<br />
Während Robot Karol mit normalsprachlichen Wörtern programmiert wird, arbeitet<br />
Kara mit Symbolbefehlen.<br />
Einstieg ins Programm<br />
Das Programm erscheint als relativ kleines Fenster.<br />
Von ihm ausgehend, können weitere Fenster<br />
zum Programmieren, für Einstellungen, für eine<br />
Bedienungsanleitung und für Aufgaben geöffnet<br />
werden.<br />
erfolgt, indem die Objekte auf das Gitter gezogen<br />
werden. Die Größe der Welt lässt sich neu festlegen;<br />
ist sie größer als das Programmfenster, kann man die<br />
Welt im Fenster verschieben oder das Fenster selbst<br />
vergrößern.<br />
Programmiersprache<br />
Es gibt keine verbale Syntax – und damit gibt es keine<br />
Schreibprobleme. Alle Aktionen werden mit der<br />
Maus durchgeführt: die Programmierung erfolgt mit<br />
Hilfe von Symbolen. Programmschritte werden einzeln<br />
(zeilenweise) definiert, indem Symbole vom<br />
Rand in die Programmierzeilen gezogen werden.<br />
Abb. 1: Das Hauptfenster von Kara<br />
Die Programmsprache ist Deutsch, die Oberfläche<br />
entspricht nicht dem WindowsStandard, z. B. vermisst<br />
man ein Menü. Zur Einführung werden in einem<br />
PDFDokument auf sechs Seiten die wesentlichen<br />
Elemente vorgestellt, so dass man sich mit dieser<br />
kleinen Anleitung zurecht findet.<br />
In Karas Welt, die als Gitter erscheint, gibt es neben<br />
dem Objekt (dem Marienkäfer Kara) unbewegliche<br />
Hindernisse (Baumstümpfe) und Objekte, mit denen<br />
Kara interagieren kann (Pilze und Kleeblätter). Kara<br />
kann mit den Schaltflächen am rechten Fensterrand<br />
direkt gesteuert werden. Die Gestaltung der Welt<br />
Abb. 2: Das Programmierfenster von Kara<br />
Als Fähigkeiten stehen Kara Schritt vorwärts, Drehung<br />
nach links und Drehung nach rechts zur Verfügung.<br />
Außerdem kann der Käfer ein Kleeblatt<br />
hinlegen oder aufnehmen. Kara besitzt Sensoren, um<br />
festzustellen, wo ein Baumstumpf ist, ob er vor einem<br />
Pilz oder auf einem Kleeblatt steht. Kara verfügt<br />
über drei Sensoren: er kann direkt vor sich einen<br />
Baumstumpf, einen Pilz oder ein Kleeblatt erkennen.<br />
Einen Sensor für das Ende der Welt hat er nicht.<br />
Wenn er auf einer Seite des Bildschirmfensters auf<br />
ZPGMitteilungen für haus und landwirtschaftliche, sozialpädagogische und pflegerische Schulen – Nr. 53 – April 2013<br />
7
<strong>Landesinstitut</strong> für <strong>Schulentwicklung</strong><br />
Abb. 3: Das Programmierfenster<br />
der JavaKara<br />
Version.<br />
das Ende der Welt trifft, verlässt er sie und betritt sie<br />
im nächsten Schritt auf der gegenüberliegenden Seite<br />
wieder.<br />
Jede Programmanweisung kann in eine JaNeinEntscheidung<br />
münden, in der Detailansicht des Programmschrittes<br />
sieht man dann in zwei Zeilen diese<br />
WennDannAnweisung. Schleifen werden nicht im<br />
gewohnter Art dargestellt, wohl aber sind Wiederholstrukturen<br />
möglich, weil innerhalb der<br />
WennDannAnweisung die gleiche Programmanweisung<br />
wieder aufgerufen werden kann.<br />
Eine Reihe von einfachen und mittelschweren Aufgaben<br />
werden mitgeliefert, auch Lösungen sind dabei.<br />
Programme können gespeichert und geladen werden.<br />
Übergang zur OOS<br />
Der Marienkäfer in seiner Welt lässt sich auch mit<br />
Java programmieren. Dazu muss man das Programm<br />
javakara.jar starten. In dieser Version stellt das<br />
Programmierfenster als EinfachEditor JavaCode dar.<br />
Leider kann weder Schriftgröße und farbe nicht<br />
geändert werden.<br />
Als Compiler wird der im System installierte benutzt,<br />
er muss nur noch in den Programmeinstellungen eingetragen<br />
werden.<br />
In JavaKara werden die Welten von Kara und die<br />
Methoden der Klasse Kara benutzt, nun sind aber alle<br />
Programmiertechniken möglich, auch Schleifen in der<br />
JavaSyntax.<br />
Programmquelle und Installation<br />
Von der Webseite<br />
www.swisseduc.ch/informatik/<br />
wird die Datei kara.jar (3 MB) heruntergeladen.<br />
Das Programmverzeichnis ist frei wählbar. Das Programm<br />
kann normalerweise durch einen Doppelklick<br />
gestartet werden, alternativ auch durch Aufruf im<br />
Terminal oder über die Menüoption Start > Ausführen.<br />
Kara.jar enthält eine Reihe von Beispielen mit<br />
Lösungen.<br />
Eine Version ohne Lösungen steht als karax.jar zur<br />
Verfügung. Eine Anleitung in einer PDFVersion (199<br />
KB) ist von der Website downloadbar.<br />
Für die JavaVariante wird die Datei javakara.jar benötigt.<br />
Zum Programmieren ist das Java JDK (Java<br />
Software Development Kit) nötig – die Runtime genügt<br />
nicht.<br />
Literatur<br />
(1) Raimond Reichert: Ein kleiner Leitfaden zu „Kara,<br />
der programmierbare Marienkäfer“<br />
www.swisseduc.ch/informatik/<br />
(2) Kurs: Einstieg ins Programmieren (PDFDatei und<br />
PowerPointFolien für jeden Tag eines fünftägigen<br />
Kurses)<br />
www.swisseduc.ch/informatik/<br />
(3) Einstieg in Java mit Kara (Kara und Java im Informatikunterricht<br />
der Jgst. 11)<br />
www.oberstufeninformatik.de/info11/javakara.html<br />
(4) Raimond Reichert, Jürg Nievergeld, Werner Hartmann:<br />
Programmieren mit Kara. Berlin Heidelberg<br />
New York: Springer 2005.<br />
Hinweis<br />
Alle InternetAdressen sind über unserer Homepage<br />
aufrufbar.<br />
http://www.lsbw.de/projekte/beruflschulen/zpg/hls/mitteil<br />
8<br />
ZPGMitteilungen für haus und landwirtschaftliche, sozialpädagogische und pflegerische Schulen – Nr. 53 – April 2013
ZPGMitteilungen<br />
Fazit<br />
Robot Karol mit mehr Vorteilen gegenüber Kara<br />
Der Übergang vom Robot KarolCode zum JavaKarolCode gestaltet sich einfach: die Methodenbezeichnungen<br />
sind identisch und führen zu gleichen Verhalten des Roboters. Dagegen<br />
besitzt Kara keine sprachliche Syntax, sondern verwendet Symbole. Daher wird der<br />
gesamte Programmablauf rein visuell dargestellt, und demzufolge stellt der Übergang zu<br />
dem reinem Textcode in JavaKara höhere Anforderungen.<br />
Die Symbolsyntax von Kara ist nicht aus sich heraus<br />
verständlich und verlangt eine andere Denkweise. So<br />
gibt es bei Kara keine sprachliche Syntax und keine<br />
Variablen. Die JavaSyntax von Schleifen lässt sich<br />
überhaupt nicht aus dem grafischen Code von Kara<br />
herleiten. Für Schüler entsteht das Problem, dass die<br />
Umsetzung der symbolhaften Programmierung in den<br />
JavaCode direkt nicht möglich ist.<br />
Bei Robot Karol erfordert der Übergang von der Sprache<br />
Robot Karol nach Java keinen großen Aufwand.<br />
Das Verhalten der Roboter ist identisch. Da die Objektorientierung<br />
in JavaKarol auch mehrere Roboter<br />
in einer Welt ermöglicht, muss vor jeder Methode der<br />
Name des Roboters mit angegeben werden, dessen<br />
Methode aufgerufen werden soll.<br />
Auch in Robot Karol besteht die Möglichkeit, den Objektnamen<br />
karol in Punktnotation vor die Methode zu<br />
schreiben. Wer möchte, kann dies gleich so einführen.<br />
Diese guten Entsprechungen bildeten letztendlich<br />
den Ausschlag für unsere Entscheidung, zum Einstieg<br />
ins ProgrammierLernen Robot Karol zu verwenden.<br />
Ein kleiner Nachteil soll festgehalten werden: Dieses<br />
Vorgehen erfordert einen Wechsel der Programmierumgebung<br />
von Robot Karol zu BlueJ oder JavaEditor.<br />
Hier hat Kara den Vorteil, dass es seinen eigenen<br />
Editor mitbringt. Dieser besitzt jedoch nicht die Programmierhilfen<br />
wie die beiden „echten“ JavaEditoren.<br />
Und somit fällt dieser kleine Vorteil des<br />
KaraSystems gegenüber den vielen Vorteilen von<br />
Robot Karol nicht ins Gewicht.<br />
Von Robot Karol zu JavaKarol<br />
Ein didaktisches Konzept<br />
Im Folgenden stellen wir ein Unterrichtskonzept vor,<br />
das drei ZPGMitglieder in ihrem Unterricht ausprobiert<br />
haben. Für weitere Anregungen, kritische Rückmeldungen<br />
und Ergänzungen sind wir dankbar.<br />
Die Umsetzung der in Robot Karol durchgeführten Projekte von der Programmiersprache<br />
Robot Karol nach Java sollte dem Anwender sofort vertraut sein, denn in JavaKarol finden<br />
dieselben Klassen und Objekte wie bei Robot Karol Verwendung.<br />
Die Umsetzung eines KarolProgramms von der Sprache<br />
Robot Karol in die Sprache Java erfordert keinen<br />
großen Aufwand. Die Bezeichner der RoboterMethoden<br />
sind nahezu gleich und das Verhalten der Roboter<br />
ist identisch. Da in JavaKarol mehr als ein<br />
Roboter in einer Welt möglich ist – was die eine Vertiefung<br />
in objektorientierter Programmierung unterstützt<br />
– muss vor jeder Methode in Punktnotation das<br />
Objekt angegeben werden, dessen Methode aufgerufen<br />
werden soll.<br />
Den Schülern stehen mit JavaKarol die gesamten<br />
Möglichkeiten der mächtigen, objektorientierten Programmiersprache<br />
Java zur Verfügung. So müssen alle<br />
ZPGMitteilungen für haus und landwirtschaftliche, sozialpädagogische und pflegerische Schulen – Nr. 53 – April 2013<br />
9
<strong>Landesinstitut</strong> für <strong>Schulentwicklung</strong><br />
Kontrollstrukturen in der Notation von Java formuliert<br />
werden. Außerdem ist auf Groß und Kleinschreibung<br />
zu achten.<br />
Für JavaKarol ist neben einer JavaEntwicklungsumgebung<br />
auch eine Programmbibliothek (javakarol.jar)<br />
erforderlich. Sie enthält die beiden Klassen Roboter<br />
und Welt. Erst dadurch wird es möglich, die Welt und<br />
den Roboter in einem Grafikfenster darzustellen.<br />
Wir haben in der Zentralen Projektgruppe Informationstechnik<br />
am LS das folgende Unterrichtskonzept<br />
erarbeitet und mit den Schülern gleich getestet. In<br />
zwei bis drei Doppelstunden wurde mit Robot Karol<br />
die Grundzüge der Programmierung erlernt und geübt.<br />
In weiteren zwei Doppelstunden fand der Übergang<br />
zu Java Karol mit einem ersten Beschnuppern von<br />
Java statt. Im Anschluss erstellen die Schüler eigene<br />
Java Programme von Grund auf selbst.<br />
Unterrichtskonzept<br />
1. Doppelstunde<br />
Einführung ins Programmieren über dem<br />
Algorithmusbegriff<br />
Einführung in Robot Karol<br />
Steuerung des Roboters<br />
Einfache Befehlsfolge, einfaches Programmieren<br />
2. Doppelstunde<br />
Komplexe Programmstrukturen mit Schleifen und<br />
Bedingungen<br />
3. Doppelstunde<br />
Unterprogramme bzw. Methoden selbst<br />
geschrieben<br />
Weitere Übungen<br />
4. Doppelstunde<br />
Übergang zu Java<br />
Installation, Einbindung der Bibliothek, Compilieren<br />
und Starten eines vorgegebenen Projektes<br />
(gleiche Umgebung wie bei Robot Karol)<br />
Erzeugung von Objekten aus vorgegebenen<br />
Klassen und deren interaktive Steuerung durch<br />
Methodenaufrufe<br />
Quelltext in Java mit Programmveränderungen<br />
Begriffe: Klasse, Objekt, Attribut, Methode<br />
5. Doppelstunde<br />
Zwei Roboter in einer Welt<br />
Umgang mit mehreren Objekten<br />
Komplexe Aufgaben mit Schleifen und<br />
Bedingungen<br />
6. Doppelstunde<br />
Erstes eigenes JavaProjekt: Hallo Welt.<br />
Objekte agieren untereinander > Bankkonto<br />
Weitere Projekte<br />
Geldkarte, Rechner, BMI mit Vererbung, BMI für Kinder<br />
mit zweifacher Vererbung, komplexe Projekte,<br />
mathematische Projekte, grafische Oberfläche<br />
Fazit<br />
Dieser Weg von Robot Karol über Java Karol zu JavaProjekten<br />
verhalf unseren Schülerninnen und<br />
Schülern zu schnellen Fortschritten in der Programmierung.<br />
So waren Methoden, Schleifen und Bedingungen<br />
kein großes Thema mehr, sie wurden von den<br />
Schülerinnen und Schülern bei Bedarf einfach eingebunden.<br />
Desweiteren verhalf Robot Karol auch den<br />
Lernenden ohne Vorkenntnisse zu (zumindest kurzzeitigem)<br />
Spass im Unterricht. Die ersten drei Doppelstunden<br />
wurden im weiteren Verlauf wieder<br />
aufgeholt.<br />
(jg, rg, us)<br />
InternetLinks: Unser QRCodeAngebot<br />
Ab dieser Ausgabe finden Sie einen schnellen Zugang zu unserem Angebot über QRCodes.<br />
Die abgedruckten Links ins Internet sind der besseren Lesbarkeit wegen abgekürzt. Trotzdem<br />
ist das Auffinden des vollständigen Links für unsere Leser nicht mit einer weiteren<br />
Suchaufgabe verbunden.<br />
Die abgedruckten Links bestehen meist nur aus der<br />
URL ohne Unterverzeichnisse und Dateinamen. Wir<br />
nehmen an, dass sowieso niemand die Lust hat, den<br />
Link abzutippen.<br />
Wir leisten einen besseren Service: auf unserer Internetseite<br />
haben wir alle in der Zeitung publizierten<br />
Links in voller Länge bis zum Dokument hinterlegt.<br />
Und das Beste: Wer ein Smartphone benutzt, braucht<br />
nur den QRCode, der in jeder ZPGMitteilung abgedruckt<br />
wird, fotografieren – und schon ist man auf<br />
unserer Linkliste.<br />
Auch unter Projekte > Berufliche Schulen > ZPG ><br />
Mitteilungen auf der Website des LS. (red)<br />
10<br />
ZPGMitteilungen für haus und landwirtschaftliche, sozialpädagogische und pflegerische Schulen – Nr. 53 – April 2013