Zur Haupt­na­vi­ga­ti­on sprin­gen [Alt]+[0] Zum Sei­ten­in­halt sprin­gen [Alt]+[1]

Stoff­ver­tei­lungs­plan

Struk­tu­rier­te und ob­jekt­ori­en­tier­te Pro­gram­mie­rung (3.x.2.1)

Die­ser Stoff­ver­tei­lungs­plan stellt einen mög­li­chen Un­ter­richts­gang für die The­men „ge­ne­ri­sche Da­ten­ty­pen“, „Samm­lun­gen (Collec­tions)“ und „Durch­lau­fen einer Samm­lung (Ite­ra­ti­on, fo­reach, Lamb­da­aus­drü­cke etc)“ ta­bel­la­risch dar und kenn­zeich­net wel­che In­hal­te auf jeden Fall be­han­delt wer­den soll­ten (x) oder op­tio­nal zur Ver­fü­gung ste­hen (o). Für das Bei­fach (BF) for­dert der Bil­dungs­plan ei­gent­lich nichts zu den The­men. Es bie­tet es sich al­ler­dings an, zu­min­dest eine Un­ter­richts­stun­de für eine De­mons­tra­ti­on der Not­wen­dig­keit ge­ne­ri­scher Da­ten­ty­pen zu ver­wen­den (s. ge­ne­ri­sche Im­ple­men­tie­rung ein­fach ver­ket­te­ter Lis­ten (3.​2.​1.​2)).

Es wird hier­bei vor­aus­ge­setzt, dass die Grund­la­gen der Ob­jekt­ori­en­tie­rung (Klas­se, At­tri­bu­te, Me­tho­den mit Pa­ra­me­tern und Rück­ga­be­wer­ten, Da­ten­ty­pen und Ty­pum­wand­lung, Me­tho­den­si­gna­tur, Zu­griffs­mo­di­fi­ka­ti­on ins­be­son­de­re Set­ter/Get­ter, Kap­se­lung, Kon­struk­to­ren und In­stan­zi­ie­rung) be­reits be­kannt und ein­ge­übt sind.

Es gibt keine vor­ge­fer­tig­ten Ar­beits­blät­ter. Programmieraufträge fin­den sich im Pro­jekt „Film­samm­lung“, eine aus­führ­li­che­re Be­schrei­bung mit mög­li­chen Auf­ga­ben zu den In­hal­ten im Un­ter­richts­ver­lauf.

Std.

In­halts­be­zo­ge­ne Kom­pe­ten­zen

In­halt Programmieraufträge Auf­ga­ben

BF LF

0-1

3.x.1.2 (3)
im­pli­zi­te und ex­pli­zi­te Ty­pum­wand­lun­gen (type casts) [...] ver­wen­den und dabei auf­tre­ten­de Pro­ble­me be­schrei­ben

1. Wie­der­ho­lung: Ken­nen­ler­nen des Pro­jekts, Be­griffs­klä­run­gen zu Ty­pi­sie­rung/Ty­pum­wand­lung

ein­schrän­ken­de und er­wei­tern­de Ty­pum­wand­lung pri­mi­ti­ver Da­ten­ty­pen und Re­fe­renz­ty­pen.

Typ­in­fe­renz (op­tio­nal Fach­be­griff: Ziel­typ)

op­tio­nal (für Lamb­da­aus­drü­cke Std..): Be­griffs­klä­rung for­ma­le (Wert)Pa­ra­me­ter, kon­kre­te Ar­gu­men­te bei Me­tho­den

TODO: Bounds Check

TODO: Korrekte Filmanzahl

TODO: Suches

TODO: Getter

o x

2-3

3.​3.​1.​2 (14)
ge­ne­ri­sche Da­ten­ty­pen bei der In­stan­zi­ie­rung vor­ge­ge­be­ner Klas­sen ver­wen­den

2. Ge­ne­ri­sche Da­ten­ty­pen – Not­wen­dig­keit, De­kla­ra­ti­on

Aufgabe.a1

Auf­ga­be 1-6
Auf­ga­be 7 (o): ge­ne­ri­schen Da­ten­typ selbst de­kla­rie­ren

o x

3. Ge­ne­ri­sche Da­ten­ty­pen – Nut­zung, Bounds

Fach­be­grif­fe: ge­ne­ri­scher Typ, for­ma­ler Typ­pa­ra­me­ter, pa­ra­me­tri­sier­ter Typ, kon­kre­ter Typ­pa­ra­me­ter, Ori­gi­nal­typ, kon­kre­tes Typar­gu­ment

Dia­mant-Ope­ra­tor, In­stan­zi­ie­rung (Nut­zung)

Auf­ga­be 1-4

Aufgabe.a2
TODO: Typsicherheit garantieren

Bounds

Auf­ga­be 6 oder 7

Aufgabe.a3

x
4-5

3.x.1.2 (22)
Do­ku­men­ta­tio­nen zu ge­ge­be­nem Quell­code und Bi­blio­the­ken nut­zen

3.​3.​1.​2 (15)
sprach­li­che Mit­tel [...] zum Bei­spiel Ite­ra­ti­on, [...] nut­zen.

4. In­ter­faces, Iterable – Ar­beit mit der Do­ku­men­ta­ti­on

In­ter­face

Ar­bei­ten mit der of­fi­zi­el­len Java API Do­ku­men­ta­ti­on: Iterable<T>, Iterator<E>

Auf­ga­be 1 und 2

x

3.x.1.2 (22)
Do­ku­men­ta­tio­nen zu ge­ge­be­nem Quell­code und Bi­blio­the­ken nut­zen

3.​3.​1.​2 (15)
sprach­li­che Mit­tel zur Samm­lung gleich­ar­ti­ger Ob­jek­te (Collec­tion) und zum Durch­lau­fen [...] (zum Bei­spiel Ite­ra­ti­on, fo­reach, [...]) nut­zen

5. Das Collec­tions Frame­work und Ite­ra­ti­on

Ar­bei­ten mit der of­fi­zi­el­len Java API Do­ku­men­ta­ti­on: Collections-Framework, Iterable<T>, Iterator<E>

Auf­ga­ben­aus­wahl 1-4

Ite­ra­ti­on auf Basis von Iterable<T>: while-Schlei­fe, for-Schlei­fe, er­wei­ter­te for- Schlei­fe (fo­reach)

Aufgabe.a4 Auf­ga­be 5 Aufgabe.a5

Ver­er­bung bei ge­ne­ri­schen Typen

x
6-7

3.x.1.2 (22)
Do­ku­men­ta­tio­nen zu ge­ge­be­nem Quell­code und Bi­blio­the­ken nut­zen

3.​3.​1.​2 (15)
sprach­li­che Mit­tel [...] zum Bei­spiel [...] Lamb­da­aus­drü­cke [...] nut­zen.

6. Lamb­da­aus­drü­cke, Funk­tio­na­les In­ter­face, Ite­ra­ti­on

funk­tio­na­les In­ter­face

No­ta­ti­on: Lamb­da­aus­druck

Auf­ga­ben 1-5 zur In­spi­ra­ti­on für ei­ge­ne Auf­ga­ben

o

Ohne Bil­dungs­plan­be­zug – aus­schließ­lich für in­ter­es­sier­te, schnel­le Schü­le­rin­nen und Schü­ler

7. Streams, Fil­ter-Map-Re­du­ce-Mus­ter

Streams, Fil­ter-Map-Re­du­ce-Mus­ter

Auf­ga­ben 1-2 zur In­spi­ra­ti­on für ei­ge­ne Auf­ga­ben

8. ge­ne­ri­sche Me­tho­den

Not­wen­dig­keit ge­ne­ri­scher Me­tho­den

aufgabe.a4_generic aufgabe.a6

Auf­ga­ben 1-4

o

 

Stoff­ver­tei­lungs­plan: Her­un­ter­la­den [odt][134 KB]

Stoff­ver­tei­lungs­plan: Her­un­ter­la­den [pdf][150 KB]

 

Wei­ter zu Un­ter­richts­ver­lauf