19
Einstieg in den Ansatz Objects first OO als OOM und OOP Der Ansatz im Schnelldurchlauf Alte und neue Grundlagen Die Einstiegsphase im Detail

Neuere Ansätze der Informatikdidaktik - Informatik • … · PPT file · Web view2007-03-08 · Der Ansatz im Schnelldurchlauf Alte und neue Grundlagen Die Einstiegsphase im Detail

Embed Size (px)

Citation preview

Page 1: Neuere Ansätze der Informatikdidaktik - Informatik • … · PPT file · Web view2007-03-08 · Der Ansatz im Schnelldurchlauf Alte und neue Grundlagen Die Einstiegsphase im Detail

Einstieg in den Ansatz

Objects firstOO als OOM und OOP

Der Ansatz im SchnelldurchlaufAlte und neue Grundlagen

Die Einstiegsphase im Detail

Page 2: Neuere Ansätze der Informatikdidaktik - Informatik • … · PPT file · Web view2007-03-08 · Der Ansatz im Schnelldurchlauf Alte und neue Grundlagen Die Einstiegsphase im Detail

[email protected], IBBB 2007 2

Phase 1

Notationen, Grundkonzepte und Begriffe

Real / Obj. mit CRC-Notation Objekte und

Klassen in UML

Explorationsumgebung

Phase 2

Angeleitet ModellierenGUI kennen lernen

Üben / GUI-BibliothekEreignisbehandlung

Darstellungs- und Übungsumgebung

Phase 3

Vorgehensmodell eigenständig anwenden

Projekt in Gruppenarbeit

Softwareentwicklungs-werkzeuge und

Bibliotheken

Selbstständigkeit der Schüler

Die drei Phasen

Page 3: Neuere Ansätze der Informatikdidaktik - Informatik • … · PPT file · Web view2007-03-08 · Der Ansatz im Schnelldurchlauf Alte und neue Grundlagen Die Einstiegsphase im Detail

Schulte, AG DDI 3

Die Schritte der ersten Phase

Realbegegnung ObjektspielCRC-Modell

Interaktives

Objektdiagramm

Klassendiagramm Aktivitätsdiagramme

Schritt 1

Schritt 3

Schritt 2

Page 4: Neuere Ansätze der Informatikdidaktik - Informatik • … · PPT file · Web view2007-03-08 · Der Ansatz im Schnelldurchlauf Alte und neue Grundlagen Die Einstiegsphase im Detail

Schulte, AG DDI 4

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

Arbeits- Aufgaben

1. Automatisierung2. Interaktion

4. Vernetzung

3. Informations- verarbeitung

5. Normenund

Regulierung6. Gesellschaftliche Wechselwirkungen

Hardware Soft- ware

Organisations- Strukturen

Page 5: Neuere Ansätze der Informatikdidaktik - Informatik • … · PPT file · Web view2007-03-08 · Der Ansatz im Schnelldurchlauf Alte und neue Grundlagen Die Einstiegsphase im Detail

[email protected], IBBB 2007 5

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)

Page 6: Neuere Ansätze der Informatikdidaktik - Informatik • … · PPT file · Web view2007-03-08 · Der Ansatz im Schnelldurchlauf Alte und neue Grundlagen Die Einstiegsphase im Detail

[email protected], IBBB 2007 6

ZusammenfassungDas

Beispiel sorgt für den

roten Faden

Versc

hiede

ne

Abstr

aktio

ns-

stufe

n an

alysie

ren

Werkzeug und Notation als Lernmedium

SE-Methoden alsU-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

Page 7: Neuere Ansätze der Informatikdidaktik - Informatik • … · PPT file · Web view2007-03-08 · Der Ansatz im Schnelldurchlauf Alte und neue Grundlagen Die Einstiegsphase im Detail

[email protected], IBBB 2007 7

Erste Phase, erster Schritt

Realbegegnung ObjektspielCRC-Modell

Interaktives

Objektdiagramm

Klassendiagramm Aktivitätsdiagramme

Schritt 1

Schritt 3

Schritt 2

1a 1c1b

Page 8: Neuere Ansätze der Informatikdidaktik - Informatik • … · PPT file · Web view2007-03-08 · Der Ansatz im Schnelldurchlauf Alte und neue Grundlagen Die Einstiegsphase im Detail

[email protected], IBBB 2007 8

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?

Page 9: Neuere Ansätze der Informatikdidaktik - Informatik • … · PPT file · Web view2007-03-08 · Der Ansatz im Schnelldurchlauf Alte und neue Grundlagen Die Einstiegsphase im Detail

[email protected], IBBB 2007 9

Realbegegnung: Auswertung

• 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

Etwa:•Spieler: setzt auf ein Feld, hat Geld•Spielfeld: nimmt Betrag auf•Flasche: dreht sich

•Bank: verwaltet Gewinn•Schiedrichter•Geld•Zufallsgenerator•…

Page 10: Neuere Ansätze der Informatikdidaktik - Informatik • … · PPT file · Web view2007-03-08 · Der Ansatz im Schnelldurchlauf Alte und neue Grundlagen Die Einstiegsphase im Detail

[email protected], IBBB 2007 10

Schritte 1b: CRC-Karten

Page 11: Neuere Ansätze der Informatikdidaktik - Informatik • … · PPT file · Web view2007-03-08 · Der Ansatz im Schnelldurchlauf Alte und neue Grundlagen Die Einstiegsphase im Detail

[email protected], IBBB 2007 11

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?

Page 12: Neuere Ansätze der Informatikdidaktik - Informatik • … · PPT file · Web view2007-03-08 · Der Ansatz im Schnelldurchlauf Alte und neue Grundlagen Die Einstiegsphase im Detail

[email protected], IBBB 2007 12

Feld: otto

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

Schritt 1c: Objektspiel

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").

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

Feld

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

Page 13: Neuere Ansätze der Informatikdidaktik - Informatik • … · PPT file · Web view2007-03-08 · Der Ansatz im Schnelldurchlauf Alte und neue Grundlagen Die Einstiegsphase im Detail

[email protected], IBBB 2007 13

Objektspiel

1. Objekte erzeugen

CRC-Karten (per OHP projiziert) Die Objekte des laufende Programms

BenutzerAktive Zuschauer

2. Start des Objektspiels

Page 14: Neuere Ansätze der Informatikdidaktik - Informatik • … · PPT file · Web view2007-03-08 · Der Ansatz im Schnelldurchlauf Alte und neue Grundlagen Die Einstiegsphase im Detail

[email protected], IBBB 2007 14

Objektspiel Flaschendrehen

Feld: GesineNummer: 3Einsatz: 0

Feld: UliNummer: 2Einsatz: 0

Feld: AlbertNummer: 5Einsatz: 0

Feld: MichaelNummer: 6Einsatz: 0

Flasche: PeterNummer: 3Einsatz: 0

Feld: PaulNummer: 1Einsatz: 0NächstesFeld: Uli

Feld: MarkusNummer: 4Einsatz: 0

Spieler: IraVermögen: 5

Setze 3 auf Markus

Page 15: Neuere Ansätze der Informatikdidaktik - Informatik • … · PPT file · Web view2007-03-08 · Der Ansatz im Schnelldurchlauf Alte und neue Grundlagen Die Einstiegsphase im Detail

[email protected], IBBB 2007 15

Objektspiel Flaschendrehen

Feld: GesineNummer: 3Einsatz: 0

Feld: AlbertNummer: 5Einsatz: 0

Feld: MichaelNummer: 6Einsatz: 0

Feld: PaulNummer: 1Einsatz: 0

Feld: MarkusNummer: 4Einsatz: 0

Spieler: IraVermögen: 5

Feld: UliNummer: 2Einsatz: 0

Flasche: PeterNummer: 3Einsatz: 0

2

3

Setze 3 auf Markus

drehen

auswerten…

Page 16: Neuere Ansätze der Informatikdidaktik - Informatik • … · PPT file · Web view2007-03-08 · Der Ansatz im Schnelldurchlauf Alte und neue Grundlagen Die Einstiegsphase im Detail

[email protected], IBBB 2007 16

• 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

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

Etwa:

Page 17: Neuere Ansätze der Informatikdidaktik - Informatik • … · PPT file · Web view2007-03-08 · Der Ansatz im Schnelldurchlauf Alte und neue Grundlagen Die Einstiegsphase im Detail

[email protected], IBBB 2007 17

Ausblick I: Übergang zum Quelltext

Feld: Gesine

Nummer: 3Einsatz: 0

Feld: Albert

Nummer: 5Einsatz: 0

Feld: Michael

Nummer: 6Einsatz: 0

Feld: PaulNummer: 1Einsatz: 0

Feld: Markus

Nummer: 4Einsatz: 0

Spieler: Ira

Vermögen: 5

Feld: UliNummer: 2Einsatz: 0Flasche:

PeterNummer: 3Einsatz: 0

2. Setzen:CRC

1. Setzen:Spiel

3. Setzen:Obj.-Spiel

4. Setzen:Debugger

5. Setzen:UML

Page 18: Neuere Ansätze der Informatikdidaktik - Informatik • … · PPT file · Web view2007-03-08 · Der Ansatz im Schnelldurchlauf Alte und neue Grundlagen Die Einstiegsphase im Detail

[email protected], IBBB 2007 18

Ausblick II: Mit Objektspieldiagrammenzum Quelltext

1: setze Vermögen

2: setze Einsatz

Klasse Spieler:

public void setzen (int betrag, Feld nFeld)

{1. this.vermoegen=vermoegen-betrag;2. nFeld.setzeEinsatz(betrag);3. nFeld.gesetztVon=this;}

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)

Spieler: IraVermögen: 5

Setze 3 auf Markus

2

Feld: MarkusNummer: 4Einsatz: 0 Gesetzt von:

3Ira

3: setzeSpieler

Page 19: Neuere Ansätze der Informatikdidaktik - Informatik • … · PPT file · Web view2007-03-08 · Der Ansatz im Schnelldurchlauf Alte und neue Grundlagen Die Einstiegsphase im Detail

[email protected], IBBB 2007 19

Literatur

http://life.upb.de • 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