Objects first oo als oom und oop
This presentation is the property of its rightful owner.
Sponsored Links
1 / 19

Einstieg in den Ansatz PowerPoint PPT Presentation


  • 72 Views
  • Uploaded on
  • Presentation posted in: General

Objects first OO als OOM und OOP. Einstieg in den Ansatz. Der Ansatz im Schnelldurchlauf Alte und neue Grundlagen Die Einstiegsphase im Detail. Die drei Phasen. Phase 2 Angeleitet Modellieren GUI kennen lernen Üben / GUI-Bibliothek Ereignisbehandlung

Download Presentation

Einstieg in den Ansatz

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Objects first oo als oom und oop

Objects first

OO als OOM und OOP

Einstieg in den Ansatz

Der Ansatz im Schnelldurchlauf

Alte und neue Grundlagen

Die Einstiegsphase im Detail


Die drei phasen

Die drei Phasen

Phase 2

Angeleitet Modellieren

GUI kennen lernen

Üben / GUI-Bibliothek

Ereignisbehandlung

Darstellungs- und

Übungsumgebung

Phase 3

Vorgehensmodell eigenständig anwenden

Projekt in Gruppenarbeit

Softwareentwicklungs-werkzeuge und Bibliotheken

Phase 1

Notationen, Grundkonzepte

und Begriffe

Real / Obj. mit CRC-Notation Objekte und Klassen in UML

Explorationsumgebung

Selbstständigkeit der Schüler

[email protected], IBBB 2007


Die schritte der ersten phase

Die Schritte der ersten Phase

Schritt 1

Schritt 2

Schritt 3

Realbegegnung

CRC-Modell

Objektspiel

Interaktives

Objektdiagramm

Klassendiagramm

Aktivitätsdiagramme

Schulte, AG DDI


Alte und neue grundlagen 1 systemorientierung und cognitive apprenticeship

Modelling

Vormachen (modellieren) und erläutern

Wissen im Kontext

Scaffolding: Hilfestellung, etwa durch Teillösungen

Ansteigende Vielfalt

Ansteigende Komplexität

Alte und Neue Grundlagen 1: Systemorientierung und Cognitive Apprenticeship

Hardware

1. Automatisierung

2. Interaktion

3. Informations-

verarbeitung

Soft- ware

Arbeits- Aufgaben

Organisations-

Strukturen

4. Vernetzung

5. Normen

und

Regulierung

6. Gesellschaftliche

Wechselwirkungen

Schulte, AG DDI


Alte und neue grundlagen 2 programmieren lernen

Alte und Neue Grundlagen 2: Programmieren lernen

Novice mistakes: are the folk wisdoms correct? (1986, Spohrer, Soloway)

‘Dimensions of learning programming’ (du Boulay, 1989)

‘The novice programmers' syndrome of design-by-keyword’ (2003)

McCracken-Study; Lister-Study (2001, 2004)

“Not seeing the forest for the trees” (Lister et.al 2006)

[email protected], IBBB 2007


Zusammenfassung

Zusammenfassung

Das

Beispiel sorgt für den

roten Faden

Verschiedene

Abstraktions-

stufen analysieren

Werkzeug und Notation als Lernmedium

SE-Methoden als

U-Methoden

  • Während ein Beispiel auf verschiedenen Niveaus untersucht wird, entsteht Abwechslung für die SuS durch untersch. Medien und Methoden

  • Da diese sich an SE-Medien und Methoden anlehnen, lernen die SuS diese Inhalte gleich mit (Methodenlernen).

  • Durch Situierung nachvollziehbare Progression u. Kumulation

[email protected], IBBB 2007


Erste phase erster schritt

Erste Phase, erster Schritt

Schritt 1

Schritt 2

Schritt 3

Objektspiel

Realbegegnung

CRC-Modell

1a

1b

1c

Interaktives

Objektdiagramm

Klassendiagramm

Aktivitätsdiagramme

[email protected], IBBB 2007


Schritt 1a realbegegnung

Schritt 1a: Realbegegnung

  • Mini-Überblick:

    • Programmieren mit Objekten,

    • Zunächst lernen wir ein Einstiegs-Beispiel kennen: Flaschendrehen

  • Freiwillige spielen vor: Papierzettel als Felder, Spieler setzen, Flasche wird gedreht. Frage: wie auswerten?

[email protected], IBBB 2007


Realbegegnung auswertung

Realbegegnung: Auswertung

  • Etwa:

  • Spieler: setzt auf ein Feld, hat Geld

  • Spielfeld: nimmt Betrag auf

  • Flasche: dreht sich

  • Bank: verwaltet Gewinn

  • Schiedrichter

  • Geld

  • Zufallsgenerator

  • Zum Thema: Das Beispiel als objektorientiertes Programm: Welche Objekte könnte es geben? Was hätten die für Aufgaben?

    • Typische Antworten sind…

  • Sammeln, ggf. CRC-ähnlich an Tafel notieren

    Im nächsten Schritt (1b)…

  • Vergleich mit ‘professionellem’ Entwurf

[email protected], IBBB 2007


Schritte 1b crc karten

Schritte 1b: CRC-Karten

[email protected], IBBB 2007


Auswertung crc modell

Auswertung CRC-Modell

  • Mit Schülerlösung vergleichen (->CRC-Modell untersuchen)

    • Dabei nebenbei Syntax der CRC-Karten einführen, etwa: wieso haben die Karten zwei Spalten?

  • Schülerlösung loben

  • Ergebnis erster Schritt:Erste Annäherung an objektorientiertes Denken, nur statisch, keine Unterscheidung Klasse-Objekt

  • M.E.: Hier nicht OOA üben

  • Überleitung zum nächsten Schritt:Frage aufnehmen/lenken: Funktioniert diese seltsame vorgegebene Lösung?

[email protected], IBBB 2007


Schritt 1c objektspiel

Schritt 1c: Objektspiel

Feld

nimmt Einsatz auf Feldgibt Einsatz ab Spielerbehalte Einsatz einkennt setzenden Spielerkennt nächstes Feldkennt seine Nummer

Feld: otto

Einsatz = 0 3Nummer = 1setzenderSpieler = ullinaechstesFeld = marc

Schüler spielen in einer Art Rollenspiel die Objekte eines Programms nach

Vorbemerkung:

Schülerinnen und Schüler, die die Rolle eines Objektes übernehmen, erhalten eine Klassenkarte (CRC-Karte) sowie zusätzlich eine Objektkarte, auf denen das notwendige Wissen des Objekts zu jedem Zeitpunkt notiert werden kann.

  • Spielregeln

  • ein Akteur startet „von Außen“ das Spiel (Anwendungsfälle)

  • nur verbale Kontaktaufnahmen zu anderen Objekten sind erlaubt,

  • nur mit den Begriffen der Verantwortlichkeiten arbeiten ( "reden" ),

  • nur mit den Beteiligten Kontakt aufnehmen,

  • ausschließlich auf der Objektkarte notwendige Zustände notieren ( "keine Gedächtnisleistung des Rolleninhabers").

[email protected], IBBB 2007


Objektspiel

Objektspiel

1. Objekte erzeugen

2. Start des Objektspiels

CRC-Karten (per OHP projiziert)

Die Objekte des laufende Programms

Benutzer

Aktive Zuschauer

[email protected], IBBB 2007


Objektspiel flaschendrehen

Objektspiel Flaschendrehen

Feld: Gesine

Nummer: 3

Einsatz: 0

Feld: Uli

Nummer: 2

Einsatz: 0

Feld: Albert

Nummer: 5

Einsatz: 0

Feld: Michael

Nummer: 6

Einsatz: 0

Flasche: Peter

Nummer: 3

Einsatz: 0

Feld: Markus

Nummer: 4

Einsatz: 0

Spieler: Ira

Vermögen: 5

Feld: Paul

Nummer: 1

Einsatz: 0

NächstesFeld: Uli

Setze 3 auf Markus

[email protected], IBBB 2007


Objektspiel flaschendrehen1

Objektspiel Flaschendrehen

Feld: Gesine

Nummer: 3

Einsatz: 0

Feld: Albert

Nummer: 5

Einsatz: 0

Feld: Michael

Nummer: 6

Einsatz: 0

Feld: Markus

Nummer: 4

Einsatz: 0

Spieler: Ira

Vermögen: 5

Feld: Uli

Nummer: 2

Einsatz: 0

Flasche: Peter

Nummer: 3

Einsatz: 0

2

Feld: Paul

Nummer: 1

Einsatz: 0

Setze 3 auf Markus

drehen

3

auswerten

[email protected], IBBB 2007


Auswertung objektspiel

Auswertung Objektspiel

  • Klassen:

  • Struktur eines Objekts

  • Haben keine Werte

  • Klassen sind Baupläne

  • Objekte:

  • Es kann mehrere geben

  • Haben Werte

  • Kennen einander

  • Objekte sind aktiv

  • Welche Unterschiede gibt es zwischen Objekten und Klassen?

  • Wie funktioniert ein objektorientiertes Programm?

    • Etwa: Zunächst werden Objekte erzeugt und mit Startwerten belegt. Danach warten sie auf Eingaben durch den Benutzer und arbeiten die Aufträge ab. Dabei ändert sich

  • Etwa:

[email protected], IBBB 2007


Ausblick i bergang zum quelltext

Ausblick I: Übergang zum Quelltext

Feld: Paul

Nummer: 1

Einsatz: 0

Feld: Gesine

Nummer: 3

Einsatz: 0

Feld: Albert

Nummer: 5

Einsatz: 0

Feld: Michael

Nummer: 6

Einsatz: 0

Feld: Markus

Nummer: 4

Einsatz: 0

Spieler: Ira

Vermögen: 5

Feld: Uli

Nummer: 2

Einsatz: 0

Flasche: Peter

Nummer: 3

Einsatz: 0

3. Setzen:

Obj.-Spiel

4. Setzen:

Debugger

5. Setzen:

UML

1. Setzen:

Spiel

2. Setzen:

CRC

[email protected], IBBB 2007


Ausblick ii mit objektspieldiagrammen zum quelltext

Ausblick II: Mit Objektspieldiagrammenzum Quelltext

1: setze Vermögen

3: setzeSpieler

2: setze

Einsatz

Spieler: Ira

Vermögen: 5

Setze 3 auf Markus

  • Klasse Spieler:

  • public void setzen (int betrag, Feld nFeld)

  • {

  • this.vermoegen=vermoegen-betrag;

  • nFeld.setzeEinsatz(betrag);

  • nFeld.gesetztVon=this;

  • }

2

Feld: Markus

Nummer: 4

Einsatz: 0

Gesetzt von:

3

Ira

  • Kommentare:

  • vorgegebenen Quelltext untersuchen (Puzzle, Lückentext …)

  • vorher Programm mit (grafischem) Debugger ausführen

  • vorher Aufbau einer Klasse besprechen (CRC->UML->Quelltext)

  • später evtl.: if (nFeld.gesetztVon == null && betrag <= vermoegen)

[email protected], IBBB 2007


Literatur

Literatur

  • Skript (Version 0.01) http://www.coobra.cs.uni-kassel.de/fileadmin/se/LehrerFortbildung/OOM-Skript061108.pdf

  • Jürgen Börstler: Improving CRC-Card Role-Play with Role-Play Diagrams, OOPSLA'05 Addendum to the Proceedings (Educators' Syposium)

  • Foliensatz Objektspiel http://did.mat.uni-bayreuth.de/~matthias/veranstaltungen/ws2004/ook/ook8_print.pdf

  • Sekundarstufe 1: http://ddi.uni-paderborn.de/didaktik/Veroeffentlichungen/examensarbeiten/reinsch_thorsten_objektorientierter_einstieg.pdf

http://life.upb.de

[email protected], IBBB 2007


  • Login