blob: 4b6f24067fd89dade72e31c05582c5e48832b9f8 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
|
---
author: Florian Fischer
theme: metropolis
aspectratio: 169
header-includes: |
\makeatletter
\beamer@ignorenonframefalse
\makeatother
---
## Wiederholung - Java {.standout}
\centering
\scalebox{10}{
\faIcon{java}
}
## Peinliche Sprüchekalender
::: columns
:::: {.column width=50%}
\pause
{.center height=80%}
::::
:::: {.column width=50%}
\pause
\vspace{3cm}
Heute könnt ihr euren Eigenen bauen.
\centering \huge
\faIcon{child}
::::
:::
## Lange Tradition - `fortune`
`fortune` existiert seit der Veröffentlichung in Version 7 Unix im Jahr 1979.
### Die Vergangenheit
{.center width=70%}
\pause
### Die Zukunft
{.center width=70%}
## Wiederholung - Objektorientierte Modellierung
\begin{center}
\begin{tikzpicture}
\begin{class}[text width=5cm]{Spruechekalender}{0,0}
\attribute{monat: int}
\attribute{aktuellerSpruch: String}
\operation{naechsterTag()}
\operation{gibSpruchAus()}
\end{class}
\end{tikzpicture}
\end{center}
## Wiederholung - Objektorientiert Programmieren mit Java
\small
::: columns
:::: {.column width=60%}
```java
class Spruechekalender {
// Attribute
int monat;
String spruch;
// Konstruktor
void Spruechekalender() {
monat = 1;
spruch = "Auf los gehts los!";
}
...
```
::::
:::: {.column width=40%}
```java
...
// Methoden
void naechsterMonat() {
monat = monat + 1;
}
void gibSpruchAus() {
System.out.println(spruch);
}
}
```
::::
:::
## \faIcon{desktop} Arbeitsauftrag - BlueJ Basics 10min
Kopiere das Spruechekalender BlueJ-Projekt unter **Ablage/10b/vorlagen** und öffne es in BlueJ.
### BlueJ Basics
* *Übersetze* das Projekt
* Erzeuge ein Spruechekalender Objekt
* *Inspiziere* das neue Objekt und gib den ersten Spruch aus
## \faIcon{desktop} Arbeitsauftrag - Java Basics 10min
* Erstelle eine Methode `gibNaechsterSpruch()` die den nächsten Spruch zurück gibt
**Tipp:** Eine Methodendefinition besteht aus
`<Rueckgabetyp|void> <Funktionsname>([Datentyp Parameter ...]) {...}`{.java} \vspace{0.1cm}
* Erstelle eine bedingte Anweisung die, wenn der 4. Monat ist, den Spruch
`"April, April der macht was er will!"` ("" nicht vergessen) [zurückgibt]{.underline}
**Tipp:** Eine bedingte Anweisung hat die Form `if (<Bedingungen>) { ... }` \vspace{0.2cm}
* Denk dir für mindestens drei weitere Monate Sprüche aus und gib diese zurück \vspace{0.2cm}
* Wenn es keinen besonderen Spruch gibt soll `"Schöner <Monat>. Monat!"` zurückgegeben werden
**Tipp:** Du kannst Zahlen und Texte mit dem `+`-Operator verketten \vspace{0.2cm}
* Teste deine Änderungen
## \faIcon{desktop} Arbeitsauftrag - Java Basics II 10min
* Speichere in der Methode `naechsterTag` auch den nächsten Spruch \vspace{0.3cm}
* Schreibe eine Methode `gibAllesAus` die alle Sprüche ausgibt
**Tipp:** Wiederholungen haben die Form:
`for (<zaehler>; <abruchbedingung>; <schritt>) {...}` \vspace{0.3cm}
* Teste deine Methode `gibAllesAus`
## Mehr Kreativität - Mondrian
Unser Vorbild: Piet Mondrian (1872 – 1944)
{.center height=60%}
\pause
Aber wir sind faule Künstler und wollen die Arbeit automatisieren.
## \faIcon{desktop} Arbeitsauftrag - Frei nach Mondrian
Kopiere das Mondrian BlueJ-Projekt unter **Ablage/10b/vorlagen** und öffne es in BlueJ.
1. **Analysiert** in Zweierteams die bereits fertige Klasse `RECHTECK_MONDRIAN`.
Beschreibt euch gegenseitig, wie sie arbeitet mit den Begriffen *Oberklasse, Unterklasse, Konstruktor, Aufruf des Oberklassenkonstruktors / einer Oberklassenmethode, Zufallszahl*.
2. In der Klasse `BILD` muss die Methode `BildZeichnen` gemäß dem folgenden Struktogramm implementiert werden.
**Beschreibe**, unter welchen Umständen beim Aufruf `BildZeichnen(20)` [mehr als 20]{.underline} Rechtecke gezeichnet werden.
3. **Ergänze** die Methode `BILD.BildZeichnen` gemäß dem Struktogramm.
4. **Teste** die Methode mit den Aufrufen `BildZeichnen(100)` und `BildZeichnen(0)`.
Die Zeichnung soll enden, wenn [mindestens]{.underline} ein Rechteck von jeder Farbe vorhanden ist.
**Zeichne** ein berichtigtes Struktogramm des Abschnitts und **berichtige** die Methode entsprechend.
## \faIcon{desktop} Arbeitsauftrag - Struktogram
{.center height=90%}
|