Strukturierte Programmierung / Objektorientierte Programmierung / UML
Im Beruflichen Gymnasium, in der Fachoberschule wie auch in der Berufsschule sind die Themen Strukturierte Programmierung, Objektorientierte Programmierung und Modellierung mit UML in den Lehrplänen verankert.
An der Ludwig-Geißler-Schule wird in allen drei Schulformen die Objektorientierte Programmiersprache Java unterrichtet. Die Gründe dafür sind:
Im Folgenden wird der Unterrichtsablauf beschrieben, wie er in allen Schulformen mit unterschiedlicher thematischer Tiefe aber im Wesentlichen gleichen Inhalten stattfindet.
Im ersten Lehrnjahr werden die Grundlagen von Java vermittelt, wie sie auch für beliebige andere Programmiersprachen gelten
Bis zur Einführung von Arrays, Klassen und Objekten verwenden wir die didaktische Programmierumgebung JavaKara, die an der ETH Zürich entwickelt wurde. Über diverse Methoden steuern Schülerinnen und Schüler den Marienkäfer Kara über ein Spielfeld. Die optische Rückmeldung vermittelt eine deutlich höhere Motivation, sich mit Kontrollstrukturen und Methoden zu beschäftigen, als textbasierte Kommandozeilenausgaben.
Die allermeisten Programme werden heutzutage über grafische Benutzeroberflächen bedient. Jedes Element einer grafischen Benutzeroberflache gehört zu einer bestimmten Klasse (Kategorie) von Bedienelementen (Menüitems, Buttons, Rollbalken, Dateiauswahldialoge, etc.) mit bestimmten Eigenschaften (Attributen) und Aktionen (Methoden).
Leider erfordert die Programmierung selbst einer einfachen grafischen Oberfläche viele Zeilen sich oft wiederholenden Programmcodes. Daher werden grafische Editoren eingesetzt, mit denen der Programmierer die entsprechenden Oberflächenelemente wie Menüs, Menüitems und Buttons mit der Maus platziert und anschließend den eigentlichen Programmcode per Knopfdruck generiert.
UML ist eine grafische Modellierungssprache. Sie nimmt im objektorientierten Softwareentwurf die Rolle ein, die Struktogramme beim Entwurf von Algorithmen innerhalb einer Methode spielen.
Insbesondere stellen UML-Klassendiagramme den Zusammenhang zwischen einzelnen Klassen grafisch dar (in Form von Vererbungsbeziehungen, Aggregationen und Kompositionen). Der Code für die Klassenrümpfe kann auf Knopfdruck generiert (forward engineering) werden. Programmieren Schülerinnen und Schüler diese Codevorlage dann aus oder fügen neue Attribute und Methoden hinzu, werden diese automatisch auch im UML-Klassendiagramm visualisiert (reverse engineering).
Beispiele für weitere UML-Diagramme, Aufgabenblätter und einführende Texte finden Sie nebenstehend.
Der Einsatz der Modellierungswerkzeuge korrespondiert auch damit, dass hier ein relativ großer Anteil an den Prüfungen besteht.
Software Downloads
Java JDK
JavaKara
Eclipse IDE
VIPS
Beispielaufgaben
UML-Diagramme