9
Folie 1 von 9 03.01.2005 Idee und Layout: S. Spolwig u. Chr. Steinbrucker Karel D. Robot – Ein spielerischer Weg, um OOP mit Delphi zu lernen Die Herausforderung E 3.2.1 Variablenfreier Zugang Es sollen Problemlösungsklassen für eine virtuelle Robotersteuerung entworfen werden. Dabei werden • Elemente der Programmiersprache erlernt. vorgefertigte Bausteine (Roboterdefinition) verwendet. • die entworfenen Algorithmen in einer Programmiersprache dargestellt • geeignete Testumgebungen entworfen (hier: verschiedene Roboterwelten). ... lässt sich dieser Zugang bei Verwendung einer geeigneten Programmiersprache auch nutzen, um gleichzeitig in die OOP einzuführen (Objectpascal, Java, Python...). Wiederverwendbare Teilalgorithmen können als Methoden erweiterter Roboterklassen realisiert werden (Vererbung). Rahmenplan Berlin, Jan. 2005 - E-Phase

Die Herausforderung

  • Upload
    emma

  • View
    16

  • Download
    0

Embed Size (px)

DESCRIPTION

E 3.2.1 Variablenfreier Zugang Es sollen Problemlösungsklassen für eine virtuelle Robotersteuerung entworfen werden. Dabei werden • Elemente der Programmiersprache erlernt. • vorgefertigte Bausteine (Roboterdefinition) verwendet. - PowerPoint PPT Presentation

Citation preview

Page 1: Die Herausforderung

Folie 1 von 9 03.01.2005 Idee und Layout: S. Spolwig u. Chr. Steinbrucker

Karel D. Robot – Ein spielerischer Weg um OOP mit Delphi zu lernen

Karel D. Robot – Ein spielerischer Weg, um OOP mit Delphi zu lernen

Die Herausforderung

E 3.2.1 Variablenfreier Zugang

Es sollen Problemlösungsklassen für eine virtuelle Robotersteuerung entworfen werden. Dabei werden

• Elemente der Programmiersprache erlernt.

• vorgefertigte Bausteine (Roboterdefinition) verwendet.

• die entworfenen Algorithmen in einer Programmiersprache dargestellt • geeignete Testumgebungen entworfen (hier: verschiedene Roboterwelten).

... lässt sich dieser Zugang bei Verwendung einer geeigneten Programmiersprache auch nutzen, um gleichzeitig in die OOP einzuführen (Objectpascal, Java, Python...).

Wiederverwendbare Teilalgorithmen können als Methoden erweiterter Roboterklassen realisiert werden (Vererbung).

Rahmenplan Berlin, Jan. 2005 - E-Phase

Page 2: Die Herausforderung

Folie 2 von 9 03.01.2005 Idee und Layout: S. Spolwig u. Chr. Steinbrucker

Karel D. Robot – Ein spielerischer Weg um OOP mit Delphi zu lernen

Karel D. Robot – Ein spielerischer Weg, um OOP mit Delphi zu lernen

Die Herausforderung

3.2.3 L2: Grundlagen der Programmentwicklung

- Grundlagen von OOA, OOD, OOP (Klasse, Attribut, Methode, Instanz)

- Einfache dokumentationsunterstützende Techniken (Klassendiagramm, Struktogramm, Pseudocode)

- Elementare Daten- und Steuerstrukturen (Algorithmik im Kleinen)

- Integration vorhandener Software-Bausteine in eigene Programme

- Einblicke in das MVC Paradigma

- Analyse eines gegebenen Projektes

Rahmenplan Berlin, Jan. 2005 - E-Phase

DieAntwort Karel D. Robot

Page 3: Die Herausforderung

Folie 3 von 9 03.01.2005 Idee und Layout: S. Spolwig u. Chr. Steinbrucker

Karel D. Robot – Ein spielerischer Weg um OOP mit Delphi zu lernen

Karel D. Robot – Ein spielerischer Weg, um OOP mit Delphi zu lernen

Karel D. Robot und seine Welt - eine evolutionäre Entwicklung

TItem TWelt

TCritter TMatter

TRobot TBaum

Als offenes System läßt sich Karel D. Robot sowohl

- weiterentwickeln als auch- reduzieren.

TTrainingscamp

Page 4: Die Herausforderung

Folie 4 von 9 03.01.2005 Idee und Layout: S. Spolwig u. Chr. Steinbrucker

Karel D. Robot – Ein spielerischer Weg um OOP mit Delphi zu lernen

Karel D. Robot – Ein spielerischer Weg, um OOP mit Delphi zu lernen

Karel D. Robot OOA - Klassendiagramm

OOD(stark verkürzt)

Page 5: Die Herausforderung

Folie 5 von 9 03.01.2005 Idee und Layout: S. Spolwig u. Chr. Steinbrucker

Karel D. Robot – Ein spielerischer Weg um OOP mit Delphi zu lernen

Karel D. Robot – Ein spielerischer Weg, um OOP mit Delphi zu lernen

Karel D. Robot Hilfe!!! - Mit wie vielen Klassen muss ich denn nun arbeiten?

Als Anfänger arbeiten Sie nur in einem

Delphi-Formular. Die anderen Klassen stehen

Ihnen wie eine Bibliothek zur Verfügung,

wenn Sie etwas davon brauchen.

Als Fortgeschrittener nehmen Sie dann Ihre

erste eigene Klasse / Unit dazu.

…. Kein Grund zur Panik!

Page 6: Die Herausforderung

Folie 6 von 9 03.01.2005 Idee und Layout: S. Spolwig u. Chr. Steinbrucker

Karel D. Robot – Ein spielerischer Weg um OOP mit Delphi zu lernen

Karel D. Robot – Ein spielerischer Weg, um OOP mit Delphi zu lernen

Karel D. Robot als Unterrichts- und Lernwerkzeug

Die klassischen Aufgaben zur Algorithmik

procedure TControlFrm.SucheBlume;// Findet und pflückt die Blume. Rekursive Suche.Begin If (RD1.HindernisPruefen is TBlume) Then RD1.Aufnehmen Else Begin If RD1.VorneFrei Then Begin RD1.Vor; SucheBlume; RD1.Zurueck End Else If RD1.linksFrei Then Begin RD1.LinksDrehen; SucheBlume; RD1.RechtsDrehen End Else Begin RD1.RechtsDrehen; SucheBlume; RD1.LinksDrehen End; End;End;

Page 7: Die Herausforderung

Folie 7 von 9 03.01.2005 Idee und Layout: S. Spolwig u. Chr. Steinbrucker

Karel D. Robot – Ein spielerischer Weg um OOP mit Delphi zu lernen

Karel D. Robot – Ein spielerischer Weg, um OOP mit Delphi zu lernen

Karel D. Robot als Unterrichts- und Lernwerkzeug

Programmierunterricht?

Die klassischen Karels, Karas, Nikis  & Co. sind für die Einführung in die imperative Programmierung entwickelt, nicht für OOP. Es wird am Anfang ein Roboter (Computer) programmiert, aber kein Programmsystem entwickelt.

Deshalb stellen sie nur das dazu erforderliche Aktionsrepertoire zur Verfügung, um operative Aufgaben (einfache und schwierige Algorithmusprobleme) lösen zu können.

Insofern sind es nicht nur Mini-Languages, sondern auch geschlossene Systeme. Sie lassen, bis auf wenige Ausnahmen, keine Gestaltung der Welt im Sinne von 00-Modellierung zu.Wer das will, sollte besser gleich den Original-Karel nehmen.

Was dann?

Die Ausgangslage

Die objektorientierte Denkweise selbst ist für Schüler nicht das Problem, jedoch ist die handwerkliche Umsetzung,

„das Programmieren“ ,

wegen der fehlenden ausreichenden Übungszeit eine große Hürde..

Page 8: Die Herausforderung

Folie 8 von 9 03.01.2005 Idee und Layout: S. Spolwig u. Chr. Steinbrucker

Karel D. Robot – Ein spielerischer Weg um OOP mit Delphi zu lernen

Karel D. Robot – Ein spielerischer Weg, um OOP mit Delphi zu lernen

Karel D. Robot als Unterrichts- und Lernwerkzeug

Neue Ziele

Betrachten wir typisch objektorientierte Aufgaben:

Bau eines besseren Roboters,

Gestaltung einer neuen Landschaft (Welt) und

Probleme für mehr als einen Roboter

Page 9: Die Herausforderung

Folie 9 von 9 03.01.2005 Idee und Layout: S. Spolwig u. Chr. Steinbrucker

Karel D. Robot – Ein spielerischer Weg um OOP mit Delphi zu lernen

Karel D. Robot – Ein spielerischer Weg, um OOP mit Delphi zu lernen

Karel D. Robot als Anregung für Ihre Phantasie

Viel Spaß und gutes Gelingen!