Benutzer-Werkzeuge

Webseiten-Werkzeuge


curricula:oberstufe:uv_ef-iv

Konkretisierung EF-IV

Grundlagen der objektorientierten Modellierung und Implementation einfacher Algorithmen am Beispiel eines Marsroboters in Greenfoot

Leitfragen

Wie lassen sich Gegenstandsbereiche informatisch modellieren und in einem Greenfoot-Szenario informatisch realisieren? Wie lassen sich Aktionen von Objekten flexibel realisieren?

Vorhabenbezogene Konkretisierung

Ein zentraler Bestandteil des Informatikunterrichts der Einführungsphase ist die Objektorientierte Programmierung. Dieses Unterrichtsvorhaben führt in die Grundlagen der Analyse, Modellierung und Implementierung in diesem Kontext ein.

Dazu werden zunächst konkrete Gegenstandsbereiche aus der Lebenswelt der Schülerinnen und Schüler analysiert und im Sinne des objektorientierten Paradigmas strukturiert. Dabei werden die grundlegenden Begriffe der Objektorientierung und Modellierungswerkzeuge wie Objektdiagramme und Klassendiagramme eingeführt.

Im Anschluss wird die objektorientierte Analyse für das Greenfoot-Szenario Planetenerkundung durchgeführt. Die vom Szenario vorgegebenen Klassen werden von Schülerinnen und Schülern in Teilen analysiert und entsprechende Objekte anhand einfacher Problemstellungen erprobt. Die Ler-nenden implementieren und testen einfache Programme. Die Greenfoot-Umgebung ermöglicht es, Beziehungen zwischen Klassen zu einem späteren Zeitpunkt zu thematisieren. So kann der Fokus hier auf Grundlagen wie der Unterscheidung zwischen Klasse und Objekt, Attribute, Methoden, Objektidentität und Objektzustand gelegt werden.

Damit zunächst eine Fokussierung auf die Grundlagen der Objektorientierung möglich ist, ohne dass algorithmische Probleme ablenken, wird in den ersten drei Sequenzen dieses Unterrichtsvorhabens zunächst auf die Verwendung von Kontrollstrukturen verzichtet, so dass der Quellcode aus einer rein linearen Sequenz besteht.

Die Möglichkeiten, komplexere Probleme mit einer rein linearen Befehlssequenz zu lösen, sind natürlich begrenzt. Die Arbeit an diesen Projekten kann fließend zur vierten Sequenz führen, bei der Kontrollstrukturen im Mittelpunkt stehen, sobald die grundlegenden Konzepte der Objektorientierung sicher verinnerlicht wurden.

Das Ziel der vierten Sequenz besteht darin, das Verhalten von Objekten flexibel zu programmieren. Der Schwerpunkt liegt dabei auf der Erarbeitung von Kontrollstrukturen. Die Strukturen „bedingte Anweisung“ und „Wiederholung“ werden an einfachen Beispielen eingeführt und anschließend anhand komplexerer Problemstellungen erprobt. Da die zu entwickelnden Algorithmen zunehmend umfangreicher werden, werden systematische Vorgehensweisen zur Entwicklung von Algorithmen thematisiert.

Der Schwerpunkt der letzten Sequenz dieses Unterrichtsvorhabens liegt auf dem Einsatz von Variablen. Beginnend mit lokalen Variablen, die in Methoden und Zählschleifen zum Einsatz kommen, über Variablen in Form von Parametern und Rückgabewerten von Methoden, bis hin zu Variablen, die die Attribute einer Klasse realisieren, lernen die Schülerinnen und Schüler die unterschiedlichen Einsatzmöglichkeiten des Variablenkonzepts anzuwenden.

Zeitbedarf

18 Stunden

Sequenzierung des Unterrichtsvorhabens

Unterrichtssequenzen zu entwickelnde Kompetenzen Beispiele, Medien, Materialien

1. Identifikation von Objekten und Klassen

(a) An einem lebensweltnahen Beispiel werden Objekte und Klassen im Sinne der objektorientierten Modellierung eingeführt.

(b) Objekte werden durch Objektdiagramme, Klassen durch Klassendiagramme dargestellt.

(c) Die Modellierungen werden einem konkreten Anwendungsfall entsprechend angepasst.

Die Schülerinnen und Schüler

  • ermitteln bei der Analyse einfacher Problemstellungen Objekte, ihre Eigenschaften und ihre Operationen (M),
  • stellen den Zustand eines Objekts dar (D),
  • modellieren Klassen mit ihren Attributen und ihren Methoden (M),
  • implementieren einfache Algorithmen unter Beachtung der Syntax und Semantik einer Programmiersprache (I),
  • implementieren Klassen in einer Programmiersprache, auch unter Nutzung dokumentierter Klassenbibliotheken (I).
  • analysieren und erläutern einfache Algorithmen und Programme (A),
  • entwerfen einfache Algorithmen und stellen sie umgangssprachlich und grafisch dar (M),
  • ordnen Attributen, Parametern und Rückgaben von Methoden einfache Datentypen zu (M),
  • implementieren Algorithmen unter Verwendung von Variablen und Wertzuweisungen, Kontrollstrukturen sowie Methodenaufrufen (I),
  • testen Programme schrittweise anhand von Beispielen (I),
  • interpretieren Fehlermeldungen und korrigieren den Quellcode (I).

Beispiel: Beispiele aus dem Alltag

2. Analyse von Objekten und Klassen im Greenfoot-Szenario

(a) Schritte der objektorientierten Analyse, Modellierung und Implementation

(b) Analyse und Erprobung der Objekte im Greenfoot-Szenario

Beispiel: Das Greenfoot-Szenario „Planetenerkundung“

Von der Realität zu Objekten
Von den Objekten zu Klassen, Klassendokumentation
Objekte inspizieren
Methoden aufrufen
Objektidentität und Objektzustand

3. Implementierung einfacher Aktionen in Greenfoot

(a) Quelltext einer Java-Klasse

(b) Implementation eigener Methoden, Dokumentation mit JavaDoc

(c) Programme übersetzen (Aufgabe des Compilers) und testen

Beispiel: Programmierung einfacher Aktionen in Greenfoot

Das Szenario „Planetenerkundung“ wird gezielt um eigene Methoden zur Lösung einfacher Aufgaben ergänzt, das Programm übersetzt und schrittweise getestet.

4. Algorithmische Grundstrukturen in Java

(a) Bedingte Anweisungen (if)

(b) Verknüpfungen von Bedingungen durch die logischen Funktionen UND, ODER und NICHT

(c) Wiederholungen (Schleifen mit while und for)

(d) Systematisierung des Vorgehens zur Entwicklung von Algorithmen zur Lösung komplexerer Probleme

Beispiel: Programmierung komplexerer Aktionen in Greenfoot

Für das Szenario „Planetenerkundung“ werden gezielt Lösungen implementiert, so dass vorgegebene, einfache Probleme gelöst werden, die bedingte Anweisungen und Schleifen benötigen.

5. Variablen und Methoden

(a) Implementierung eigener Methoden mit lokalen Variablen, auch zur Realisierung einer Zählschleife

(b) Implementierung eigener Methoden mit Parameterübergabe und/oder Rückgabewert

(c) Implementierung von Konstruktoren

(d) Realisierung von Attributen

Beispiel: Erweiterung des Marsrovers um weitere Eigenschaften und Fähigkeiten

Für das Szenario „Planetenerkundung“ werden die Eigenschaften und Fähigkeiten des Marsrovers erweitert, z.B. um eine zusätzliche Energieverwaltung.

curricula/oberstufe/uv_ef-iv.txt · Zuletzt geändert: 2016/03/31 19:02 von Sven Biermann