16.01.2014 Aufrufe

Download - Landesinstitut für Schulentwicklung

Download - Landesinstitut für Schulentwicklung

Download - Landesinstitut für Schulentwicklung

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

ZPG­Mitteilungen<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 BMI­Rechner, 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 Java­Syntax 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 didaktisch­methodisch<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 Java­Version (JavaKarol und JavaKara) anbieten,<br />

die Java­Klassen (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 Java­Editor 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 Java­Syntax ü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 Klassen­Philosophie der Ob­<br />

ZPG­Mitteilungen 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 />

Klassen­Objekt­Problematik 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 />

Java­Code 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 />

ZPG­Mitteilungen für haus­ und landwirtschaftliche, sozialpädagogische und ­pflegerische Schulen – Nr. 53 – April 2013


ZPG­Mitteilungen<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 />

ZPG­Mitteilungen 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: Java­Programm 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 Java­Editor, 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 (ISBN­13: 978­3142225241).<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 PDF­Format erhältlich.<br />

6<br />

ZPG­Mitteilungen für haus­ und landwirtschaftliche, sozialpädagogische und ­pflegerische Schulen – Nr. 53 – April 2013


ZPG­Mitteilungen<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 Windows­Standard, z. B. vermisst<br />

man ein Menü. Zur Einführung werden in einem<br />

PDF­Dokument 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 />

ZPG­Mitteilungen 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 Ja­Nein­Entscheidung<br />

münden, in der Detailansicht des Programmschrittes<br />

sieht man dann in zwei Zeilen diese<br />

Wenn­Dann­Anweisung. Schleifen werden nicht im<br />

gewohnter Art dargestellt, wohl aber sind Wiederholstrukturen<br />

möglich, weil innerhalb der<br />

Wenn­Dann­Anweisung 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 Einfach­Editor Java­Code 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 />

Java­Syntax.<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 kara­x.jar zur<br />

Verfügung. Eine Anleitung in einer PDF­Version (199<br />

KB) ist von der Website downloadbar.<br />

Für die Java­Variante 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 (PDF­Datei und<br />

PowerPoint­Folien 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 Internet­Adressen sind über unserer Homepage<br />

aufrufbar.<br />

http://www.lsbw.de/projekte/beruflschulen/zpg/hls/mitteil<br />

8<br />

ZPG­Mitteilungen für haus­ und landwirtschaftliche, sozialpädagogische und ­pflegerische Schulen – Nr. 53 – April 2013


ZPG­Mitteilungen<br />

Fazit<br />

Robot Karol mit mehr Vorteilen gegenüber Kara<br />

Der Übergang vom Robot Karol­Code zum JavaKarol­Code 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 Java­Syntax 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 />

Java­Code 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 Programmier­Lernen 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“ Java­Editoren.<br />

Und somit fällt dieser kleine Vorteil des<br />

Kara­Systems 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 ZPG­Mitglieder 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 Karol­Programms von der Sprache<br />

Robot Karol in die Sprache Java erfordert keinen<br />

großen Aufwand. Die Bezeichner der Roboter­Methoden<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 />

ZPG­Mitteilungen 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 Java­Entwicklungsumgebung<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 Java­Projekt: 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 Java­Projekten<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 />

Internet­Links: Unser QR­Code­Angebot<br />

Ab dieser Ausgabe finden Sie einen schnellen Zugang zu unserem Angebot über QR­Codes.<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 QR­Code, der in jeder ZPG­Mitteilung 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 />

ZPG­Mitteilungen für haus­ und landwirtschaftliche, sozialpädagogische und ­pflegerische Schulen – Nr. 53 – April 2013

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!