Informatik in der 12 mit Java
Hier wird eine Unterrichtssequenz für die Jahrgangsstufe 12 (Schuljahre 2001/2002 und 2002/2003, Grundkurs)
mit der Programmiersprache Java je nach Unterrichtsfortschritt dokumentiert.
Teilweise dokumentiert sind die diversen
Wiederholungen für die Schüler, die
neu in meinen Kurs gekommen sind. dies betrifft insbesondere das Thema
"Rekursion".
Klassen und Objekte werden behutsam eingeführt. Bei Arrays tauchen zum ersten Mal
die Begriffe Klasse und Objekt auf. Diverse Schwierigkeiten
beim Verständnis von Zuweisungen werden genutzt, um das Zeigerkonzept
einzuführen: Eine Arrayvariable a ist ein Pointer auf ein Array-Objekt.
Das Gleiche gilt dann für Strings. Zur Untersuchung des Zeitverhaltens
von Sortieralgorithmen wird zum ersten Mal eine separate Klasse erstellt.
Zwischenzeitlich sind Sequenzen zu rechnerinternen Vorgängen und zum
Thema 'Datenbanken' vorhanden. Die Datenbanktabellen führen dann
zur Behandlung von einfachen Klassen und Objekten.
Später werden dann beim Thema 'Dynamische Datenstrukturen'
auch Klassen mit Daten und Methoden behandelt. Ganz allmählich gewinnt
der Begriff 'Objektorientierung' eine Bedeutung.
Als wichtigste Quelle nutze ich das meiner Meinung nach
hervorragende Buch
"Sprechen Sie Java - Eine Einführung in das systematische Programmieren"
von Hanspeter Mössenböck.
Die dort angegebenen einfachen Ein- und Ausgabe-Klassen In.html
(In.java) und Out.html
(Out.java) werden bei den meisten
Programmen auch hier benutzt.
(zum vorangegangenen Unterricht in der 11 (2000/2001 und 2001/2002) siehe
JavaKara und
Java mit Turtle)
Installation der Programme auf der Informatik-CD zu Hause
Alle Arbeitsblätter sind mit TeX erstellt,
mit DVIPS ins PostScript-Format und mit GhostScript ins PDF-Format konvertiert worden.
Die LaTeX-Quelltexte (Zip-Datei) sind verfügbar.
Sollte etwas fehlen, so schicken Sie mir eine EMail.
- Die Datenstruktur Array
Einführung mit graphischer Anwendung (mit Turtle)
(Wird später mit einer Klasse 'Punkt' gelöst werden.)
- Standardoperationen auf Arrays
Einlesen, Ausgeben, Element suchen, Maximum und Minimum suchen.
- Stoppuhr zum Testen der Algorithmen
Erstes Beispiel einer sehr einfachen selbsterstellten Klasse
- Einfache Sortieralgorithmen für Arrays
Minsort, Bubblesort und Bubblesort mit Merker
- Binäre Suche in einem Array
- Arrays sind Objekte: Was ist ein Zeiger?
- Zeichen und Zeichensätze (Unicode)
- Zeichen in Dateien (TXT-Dateien)
- Strings
String als Objekt, Stringvariable, Stringoperationen,
Stringaufbau, StringBuffer, Konversionen
- Mehrdimensionale Arrays und Backtracking
mit dem "Haus des Nikolaus" als einführendem Beispiel.
- Rekursive Sortieralgorithmen
- Sortierverfahren im Vergleich
-
Klassen und Objekte (Einführung)
und Objekte in Arrays
-
Klassen mit Daten und Methoden, Konstruktoren
- Dynamische Datenstrukturen
- Sortierte Listen
Einfüge- und Löschmethoden u.a.
- Weitere Listenstrukturen: FIFO, LIFO bzw. Stack
Fortführung des Themas in der 13
Nach den Sortieralgorithmen wurde eine Unterrichtsreihe zu
rechnerinternen Vorgängen eingeschoben (noch nicht vollständig dokumentiert):
- Verschiedene Stellenwertsysteme: Dezimal-, Binär-, 5er-, 6er- und
Hexadezimalsystem
- Addition und Multiplikation
- Negative Zahlen im Binärsystem (Zweierkomplement) und Subtraktion
- Prinzipielle Darstellung von rationalen Zahlen
- Logische Schaltungen: AND, OR, NOT, XOR, NAND, NOR
- Beispiel und
- Schaltung zur Speicherung eines Bits
- Halbaddierer und
Volladdierer
- Simulation eines Mikroprozessors durch ein Rollenspiel
- Vorstellung des Programmes DC: Didaktischer Computer
- Rolle der einzelnen Bauteile: Befehlsregister, Befehlszählregister,
Adressregister, Datenregister, Akkumulator, Adressbus, Datenbus, Steuerleitungen, RAM.
- Einfaches Maschinenspracheprogramm für den DC mit direkter Adressierung
- Benutzung des Mini-Assemblers mit symbolischen Adressen
- Schleifenstrukturen, Verzweigungen, Unterprogramme, Parameterübergabe,
lokale Variablen
Diese Unterrichtsreihe zu den Stellenwertsystemen wird in diesem Schuljahr bereits in der 11 durchgeführt.
Thema Datenbanken
Gerne würde ich mich mit an der Thematik interessierten Lehrern austauschen.
Eine empfehlenswerte Möglichkeit ist über die (von mir betreute)
Informatik-Mailingliste bei der
ZUM (Zentrale für Unterrichtsmedien)
gegeben. Bitte tragen Sie sich dort ein!
Einstiegssequenz in der 11 mit KARA,
dem programmierbaren Marienkäfer und
weitere Informationen zur Informatik und Java und den eingesetzten
lizenzfreien Programmen.