<sitzung-03>
Add session 3: Vergleich Objects First und Objects Later Ansatz und Studie von Ehlert (2012)
This commit is contained in:
parent
3bdd6b77bb
commit
6ad5839c98
1 changed files with 84 additions and 0 deletions
84
sitzung-03.md
Normal file
84
sitzung-03.md
Normal file
|
|
@ -0,0 +1,84 @@
|
|||
# Sitzung 3
|
||||
## Objects First vs. Objects Later
|
||||
|
||||
📅 28.04.2026 | 🔗 [Aufgabenstellung](https://franke-lab.de/lehre/sose/fadiinf/u3.html)
|
||||
|
||||
---
|
||||
|
||||
## Caglar, Melisa
|
||||
|
||||
### Aufgabe 1a: Was ist Objektorientierung?
|
||||
*Beschreiben Sie die Auto-Klasse in eigenen Worten — ohne Programmierbegriffe:*
|
||||
- Was ist `Auto`? allgemeine Beschreibung für ein Auto mit bestimmten Eigenschaften (Marke, Modell, Farbe).
|
||||
- Was ist `mein_auto`? mein_auto ist ein ganz bestimmtes Auto mit bestimmten Eigenschaften, nämlich ein VW Golf in blau;
|
||||
- Was macht `info()`? eine Funktion, welches ein Auto mit den zugehörigen gespeicherten Angaben/Eigenschaften (Marke, Modell, Farbe) auf dem Bildschirm ausgibt
|
||||
|
||||
### Aufgabe 1b: Eigenes Beispiel — Klasse „Schüler:in"
|
||||
*Skizzieren Sie eine ähnliche Klasse mit mind. 3 Eigenschaften und einer Methode:*
|
||||
Code:
|
||||
class Schueler:
|
||||
def __init__(self, name, class, age):
|
||||
self.name = name
|
||||
self.class = class
|
||||
self.age = age
|
||||
|
||||
def info(self):
|
||||
print(self.name, "ist in der" self.class, "und ist", self.age)
|
||||
|
||||
schueler1 = Schueler("Anna", "6a", "11")
|
||||
schueler2 = Schueler("Tom", "7b", "12")
|
||||
|
||||
schueler1.info() # Anna ist in der 6a und ist 11
|
||||
schueler2.info() # Tom ist in der 7b und ist 12
|
||||
|
||||
- Eigenschaft 1:Name
|
||||
- Eigenschaft 2:Klasse
|
||||
- Eigenschaft 3:Alter
|
||||
- Methode:info(self): print(self.name, "ist in der" self.class, "und ist", self.age)
|
||||
|
||||
|
||||
### Aufgabe 2: Objects Later — Diskussion
|
||||
**Vorteile für Lernende ohne Vorkenntnisse:**
|
||||
-Gelernte baut aufeinander auf - erst Grundlagen, dann OOP und Anwendung der gelernten Grundlagen in dem neuen Gebilde
|
||||
|
||||
**Risiken (z. B. fehlende Motivation):**
|
||||
- Wenn man erst Grundkonzepte lernt, fehlt einem danch der Realitätsbezug. Wozu lerne ich das?
|
||||
- Es wird auf einemal kompliziert mit den Klassen und Gefahr Schüler kommen nicht mehr mit (andere Art zu denken bei Objektorientierer Programmierung)
|
||||
|
||||
**Rolle der Motivation in diesem Modell:**
|
||||
- Anfangs Vorhanden -sehr motiviert. Langfristig Motivation sinkt
|
||||
- Motivation kommt wieder, wenn Klassen neu eingeführt werden. Schüler sehen Realitätsbezug und denken sich damit kann man echt coole Sachen machen. Langfristing sinkt hier wieder die Motivation, da es schnell sehr kompliziert wird.
|
||||
|
||||
### Aufgabe 3a: Objects First — implizite Konzepte
|
||||
*Was lernen SuS implizit (ohne explizite Benennung)?*
|
||||
- lernen von Beginn dass OOP Programmierung möglich ist und nehmen diese Denkweise später mit
|
||||
- lernen die Steuerung von Objekten und nicht das schreiben von technischen Anweisungen im Detail
|
||||
|
||||
### Aufgabe 3b: Welche Lernumgebungen folgen Objects First?
|
||||
*z. B. Scratch, TigerJython, Python-in-Pieces …*
|
||||
- Am ehesten folgen Scratch und (in vielen Szenarien) Python-in-Pieces einem Objects‑First‑Ansatz, TigerJython eher weniger.
|
||||
|
||||
### Aufgabe 4: Vergleichstabelle
|
||||
|
||||
| Kriterium | Objects First | Objects Later |
|
||||
|-----------|--------------|---------------|
|
||||
| Einstiegsmotivation | hoch, da sofort was sichtbares funktioniert| Eher mittel: oft sichtbare Ergbnisse erst am Ende|
|
||||
| Verständnis von Syntax |Risiko: Die Objekt-Idee wird verstanden, aber die Schreibweise und Grundprinzipien könnten dabei schwieriger zu erlernen werden | Vorteil: Lernende üben zuerst einfache Grundkonstrukte (Zuweisung, Schleife, Funktion); wenn Objekte kommen, ist die Grundsyntax schon routiniert. |
|
||||
| Transferkompetenz |Vorteil: Wer früh in Objekten denkt kann dieses Modell auf viele Kontexte übertragen, z.B. Spiele, reale Systeme | Man hat Grundkentnisse der Programmierung, aber der Transfer in reale Systeme könnte den Schülern schwerer fallen. Solide Algorithmen- und Strukturkenntnisse erleichtern den Transfer auf andere Sprachen und nicht‑OO‑Kontexte. |
|
||||
| Überforderungsrisiko | eher allgemein geringer | geringer zu Beginn, aber dafür sehr viel höher bei der Umstellung auf Objektdenken |
|
||||
| Eignung für Schulklassen |Besonders geeignet bei motivierten oder leistungsstärkeren Lerngruppen, in Wahlpflichtkursen oder Profilklassen | Gut geeignet für sehr gemischte oder leistungsschwächere Klassen und für enge Zeitbudgets, weil man grundlegende Programmier |
|
||||
|
||||
### Aufgabe 5: Ehlert (2012)
|
||||
1. Fazit der Studie — gibt es einen klaren „Gewinner"?
|
||||
- Ehlert findet keinen eindeutigen „Gewinner“; beide Ansätze haben spezifische Stärken und Schwächen, deren Wirkung stark von Rahmenbedingungen wie Lerngruppe, Vorkenntnissen und Lehrkraft abhängt.
|
||||
|
||||
2. Welche Rahmenbedingungen beeinflussen die Wirksamkeit?
|
||||
- Ehlert betont, dass seine Ergebnisse auf ein sehr spezielles Setting (11. Klasse berufliches Gymnasium, Java, konkrete Lehrkräfte) zugeschnitten sind und daher nicht ohne Weiteres auf andere Schularten oder Altersstufen übertragbar sind. Entscheidend für die Wirksamkeit sind Vorkenntnisse und Leistungsniveau der Lernenden, die Lehrkraft und ihr didaktisches Vorgehen sowie die Organisation und Reihenfolge der Themen, wobei insbesondere leistungsschwächere Schülerinnen und Schüler von einem stufenweisen Einstieg wie OOP‑Later profitieren.
|
||||
|
||||
3. Stimmt das Ergebnis mit Ihrer Einschätzung aus Aufgabe 4 überein?
|
||||
- Meine Einschätzung aus Aufgabe 4 wird im Kern bestätigt: OOP‑First wirkt zwar motivierend, ist aber kognitiv anspruchsvoll und birgt ein höheres Überforderungsrisiko, während OOP‑Later einen systematischeren Aufbau erlaubt und besonders leistungsschwächeren sowie heterogenen Lerngruppen zugutekommt. Überraschend ist vor allem, dass OOP‑Later in vielen objektorientierten Themen im Test signifikant besser abschneidet und OOP‑First auch mit unterstützenden Werkzeugen wie BlueJ die grundlegende Komplexität und Überforderung nicht automatisch auflöst.
|
||||
|
||||
### Persönliches Fazit *(3–5 Sätze)*
|
||||
Für mich zeigt Ehlerts Studie sehr deutlich, dass die Grundintuition vieler Lehrkräfte stimmt. Es gibt keinen „magischen“ Ansatz, der alle Probleme löst, sondern wir müssen genauer auf unsere Lerngruppe schauen. Gerade weil OOP‑Later in vielen OOP‑Themen besser abschneidet, nehme ich für die Schule mit, dass ein behutsamer, gut strukturierter Aufbau (erst grundlegende Kontrollstrukturen, dann Objekte) oft mehr bringt. Vor allem auch bei leistungsschwächeren Schülern, von denen bestimmt paar Schüler in einer Klasse sein werden.
|
||||
|
||||
---
|
||||
Loading…
Reference in a new issue