Klasse 10 I

Unterrichtsmaterial für Informatik 10

In der 10. Klasse erlernen unsere Schülerinnen und Schüler die Techniken der Zustandsmodellierung und der objektorientierten Modellierung.

Wer Zustandsmodellierung eintrainiert hat, kann im Prinzip alle mechanischen und einfachen elektronischen Automaten aufbauen. All diese Geräte basieren darauf, dass sie endlich viele verschiedene "Zustände" kennen. Solche Registrierkassen (wie rechts gezeigt) sind schon ziemlich raffinierte Automaten. Aber auch eine Registrierkasse kann sich nur in einer endlichen Anzahl von verschiedenen Zuständen befinden. Wer Genaueres über die Planung und den Entwurf solcher endlicher Automaten wissen will, erfährt das nötige Knowhow im Unterricht beim Thema "Zustandsmodellierung".

Ziemlich bald aber stellt man in der 10. Klasse fest, dass endliche Automaten viele Aufgabenstellungen prinzipiell gar nicht lösen können. Beispielsweise scheitern sie beim Rechnen mit echten rationalen Zahlen ("Kommazahlen"). Dazu müssten sie mit unendlich vielen Zuständen arbeiten können. Außerdem besitzen endliche Automaten keinerlei "Gedächtnis". Sie können sich eigentlich gar nichts merken. Es lässt sich zwar auch mit endlichen Automaten eine Art "Gedächtnis" simulieren - aber man zahlt einen teuren Preis dafür: Die Zahl der verschiedenen Zustände steigt explosionsartig. Ein mechanischer endlichen Automaten würde dann sehr schnell so kompliziert, dass kaum einer so eine Maschine bauen könnte.

Klasse 10 II

Eine mögliche Abhilfe ist es, derartige Maschinen objektorientiert zu modellieren. Beispielsweise kann man damit die rechts gezeigte Kasse realisieren. Diese elektronische Kasse hat das Vermögen, sich viele Daten zu merken. Sie hat also ein echtes "Gedächtnis": den RAM-Speicher.

Mit solchen einfachen Beispielen (wie einer elektronischen Kasse) werden wir im Unterricht die Methoden der objektorientieren Modellierung kennen lernen. Da noch viele weitere Techniken des objektorientierten Modellierens / Programmierens hinzu kommen (z.B.: Objektbeziehungen, Vererbung), werden die Beispiele gegen Ende des Schuljahres aber dann erkennbar komplexer und auch deutlich interessanter.

Mit dem objektorientierten Programmieren beschäftigten wir uns in der 10. Klasse insgesamt über 8 Monate lang. Dabei werden die Schülerinnen und Schüler vor allem zwei Grundtechniken lernen:

Eine reale Situation in ein objektorientiertes Modell übersetzen

Beispielsweise soll ein Auto mit vier Rädern und gewissen Eigenschaften wie Länge oder Höhe objektorientiert "modelliert" werden. Etwa nach fünf Monaten Kurs erledigen das Schüler wie folgt:

Klasse 10 OOM

Das objektorientiertes Modell in ein Programm übersetzen

Als Programmiersprache kommt C++ zum Einsatz. An der Schule verwenden wir dabei den C++Builder in der Version 6.0. Dieses leistungsfähige Programmiersystem ist übrigens im Buchhandel für zirka 25 Euro erhältlich. Weiter unten finden sich Informationen dazu.

Das obige Modell vom Auto mit vier Rädern kann in etwa so in C++ realisiert werden: Klasse 10 OOP

Download

Hier können Sie das Skript des Zehntklasskurses herunterladen, das auch viele Übungsaufgaben und Musterlösungen enthält. Es ist im Word-Format gespeichert und jederzeit änderbar.

Das Skript ist sicher nicht 100% fehlerfrei. Der Kurs wurde im Schuljahr 2008/09 erprobt und dabei für recht gut brauchbar befunden. Voraussetzung ist die Verwendung von Open-Office Impress (bzw. Microsoft Powerpoint) und des Borland C++Builders ab Version 6.0.

Freie Ausgabe: Alle Teile des Zehntklasskurses sind urheberrechtlich geschützt! Allerdings ist es zulässig, Änderungen am Material vorzunehmen, wo auch immer es für Unterrichtszwecke sinnvoll erscheint. Bitte benachrichtigen Sie den Autor (Matthias Maas) über sinnvolle Erweiterungen und Änderungen! Die Weiterverbreitung des Materials ist für Unterrichts- und Schulungszwecke uneingeschränkt zulässig. Eine kommerzielle Nutzung ist jedoch verboten.

Bezugsquelle für den C++Builder 6.0

Hans-Georg Schumann: C++ für Kids
(Teil der Wahlkursbibliothek)

Das Buch ist in einer kindischen, oft krampfhaft lustigen Sprache verfasst. Der Inhalt ist insgesamt zufriedenstellend bis gut verständlich. Als Lehrbuch für C++ ist es damit bedingt geeignet.

Weshalb ich das Buch wärmstens empfehle: Es ist eine CD-ROM mitgeliefert, die eine Vollversion der hervorragenden und für Anfänger sehr gut geeigneten C++-Programmierumgebung "C++Builder 6.0" von Borland/Inprise enthält. Die Software ist jeden Cent wert, den man für das Buch hinblättern muss: Der Preis beträgt 24,95 Euro.