Lernen der Programmiersprache Java Didaktik der Informatik SS 04 Tim Schweisgut Was ist Java Eine objektorientierte Programmiersprache Bekannteste Komponente: „Applets“ Applets werden innerhalb des Browsers ausgeführt. Mit Virtual Machine (VM) kann man auch eigenständige Programme schreiben (auch mit „moderner“ Windows-Oberfläche) Leicht Threads (nebenläufige Aktivitäten) schreiben. Leicht auf Datenbanken zuzugreifen. Wie funktioniert Java I Benötigt Quelldatei mit Quelltext Erstellbar mit Editor aber einfacher mit IDE, da diese auch Debugger und Kompiler bietet Kompiler übersetzt Quelltext in Bytecode Bytecode wird von JVM in Maschinenbefehle umgesetzt Jeder Rechner mit JVM kann, unabhängig von OS, Programm ohne kompilieren ausführen Wie funktioniert Java II Die JVM gibt es für alle gängigen OS (Windows, Linux, Unix, Solaris,…) Sofern Bytecode Sicherheitsbedingungen erfüllt, kann ein Browser ihn auch ausführen Was benötigt man zum Programmieren mit Java? Das Standard Development Kit (SDK) von Sun (Standardkompiler) Eventuell IDE, damit das Programmieren leichter fällt Die Geschichte von Java 1991 von James Gosling im Green-Projekt entwickelt Ursprünglich sollte es eine Sprache für Haushalts- und Industriegeräte sein Sollte eigentlich Oak heißen, dann aber Kaffeesorte gewählt 1995 Alpha-Release 1997 Version 1.1 des JDK … 2002 Version 1.4 des JDK (Geschwindigkeit) Einordnung in den Lehrplan Informatik leistet eigenständigen Beitrag im mathematisch naturwissenschaftlichen Aufgabenfeld Methoden und Werkzeuge der Informatik werden in vielen Bereichen verwendet 11.2 Grundlagen der Programmierung 12.1 objektorientierte Modellierung UML In Projekten erarbeiten und wenn möglich auf HTML ausarbeiten Objektorientierte Programmierung I Vorteile der OOP: Schutz der Daten: Methoden „bewachen“ Daten Verständlichkeit: Datentypen selbst definieren (Schüler, Schule,…) Diese werden als Klassen eingeführt Ein Objekt entspricht dann diesem Gegenstand OOP II / Objekte Beispiel für ein Objekt: rechteck Attribute: width 10 x 10 y 10 height Methoden: Objekt unterteilt in Datenelemente und die zugehörigen Funktionen (Methoden) 10 andere Objekte draw() scale(…) move(…) OOP III Übersicht bei großen Systemen: In OOP werden Klassen und Pakete als größere Einheiten eingeführt. Pakete Klassen Methoden/Daten Wiederverwendbarkeit von Quellcode: Quellcode kann vererbt werden. Eine Vaterklasse gibt alle Methoden und Datenfelder an Unterklassen weiter OOP IV Leicht grafikorientierte Benutzeroberflächen zu proogrammieren Nachteil: Man muss teilweise hohes Maß an Abstraktion aufbringen. Man kann die Schüler allerdings mit leichten Beispielen heranführen Grundlagen in der 11 mit JavaKara I JavaKara entwickelt an der ETH Zürich Mit Java programmierbarer Marienkäfer Bietet spielerischen Zugang zur JavaProgrammierung Alle wichtigen Grundlagen (Schleifen, Rekursion,…) lassen sich leicht mit JavaKara verdeutlichen und realisieren Grundlagen in der 11 mit JavaKara II JavaKara hat European Academic Software Award 2002 gewonnen Download zusammen mit Unterrichtsmaterialien kostenlos bei ETH Zürich: http://www.educeth.ch/informatik/programmieren.html Wie funktioniert JavaKara? JavaKara im Unterricht I Schüler schreiben Java-Klasse, was Kara machen soll (z.B. bis zu einem Baum gehen) Ergebnis kann mit JavaKara kontrolliert werden Zuerst Aufbau des Programms erklären Relativ schnell erstes Arbeitsblatt möglich JavaKara im Unterricht II / erstes Arbeitsblatt Erstes Arbeitsblatt: Aufgabe: Kara steht vor einem Blatt, welches vor einem Baum liegt. Kara soll auf das Blatt gehen, es aufnehmen, um den Baum herumgehen, sich wieder in Ausgangsrichtung drehen, das Blatt ablegen, einen Schritt nach vorne machen und sich umdrehen. JavaKara im Unterricht III Anleitung zur Lösung der Aufgabe angeben Erklärung zu Lösung (Quelltext) geben Erklärung zu Kara‘s Fähigkeiten geben Erklärung zur Programmierumgebung geben JavaKara im Unterricht IV In folgenden Stunden mit solchen Blättern weiterarbeiten und so alle wichtigen Themen erklären JavaKara ist Freeware, also können die Schüler jeweils Hausaufgaben zur Vertiefung und Festigung bekommen JavaKara im Unterricht V Rekursion Kara soll aus dem Labyrinth findend Helfe Kara ohne Verwendung einer Schleife Fazit JavaKara bietet einfachen spielerischen Zugang zur Programmierung mit Java Die Grundlagen können in der 12 dann erweitert werden, am besten ebenfalls mit Java (siehe Vorteile) Java hat eine einfache Möglichkeit Ausnahmen abzufangen Grafikorientierte Oberfläche und Ausnahmebehandlung motivieren Schüler, da die Programme professioneller wirken Quellen Dr. Claudia Leopold, Informatik III Skript, WS 03/04 JLU Joachim Goll, Java als erste Programmiersprache, Teubner Verlag http://www.educeth.ch/informatik/programmieren.html Meine Ausarbeitung: http://www.timschweisgut.de