diff options
| author | Florian Fischer <florian.fischer@muhq.space> | 2024-01-05 13:45:43 +0100 |
|---|---|---|
| committer | Florian Fischer <florian.fischer@muhq.space> | 2024-01-05 13:45:43 +0100 |
| commit | c3594ea64840af3e28c1976722a9390590760da1 (patch) | |
| tree | e82d19a530e723202c526bcafe35d144e57c7bf8 /Info/10 | |
| parent | 4ff9c0f2cb2355305c08b57ea98249fb2d999735 (diff) | |
| download | unterricht-c3594ea64840af3e28c1976722a9390590760da1.tar.gz unterricht-c3594ea64840af3e28c1976722a9390590760da1.zip | |
add my next info lesson in 10B
Diffstat (limited to 'Info/10')
| -rw-r--r-- | Info/10/2/WiederholungenJava/Spruechekalender/Spruechekalender.ctxt | 9 | ||||
| -rw-r--r-- | Info/10/2/WiederholungenJava/Spruechekalender/Spruechekalender.java | 28 | ||||
| -rw-r--r-- | Info/10/2/WiederholungenJava/Spruechekalender/package.bluej | 32 | ||||
| l--------- | Info/10/2/WiederholungenJava/Vorlage_Mondrian | 1 | ||||
| -rw-r--r-- | Info/10/2/WiederholungenJava/img/cowfortune.png | bin | 0 -> 12951 bytes | |||
| -rw-r--r-- | Info/10/2/WiederholungenJava/img/fortune.png | bin | 0 -> 7737 bytes | |||
| -rw-r--r-- | Info/10/2/WiederholungenJava/img/mondrian_II_red_blue_yellow.jpg | bin | 0 -> 2983853 bytes | |||
| -rw-r--r-- | Info/10/2/WiederholungenJava/slides.md | 150 |
8 files changed, 220 insertions, 0 deletions
diff --git a/Info/10/2/WiederholungenJava/Spruechekalender/Spruechekalender.ctxt b/Info/10/2/WiederholungenJava/Spruechekalender/Spruechekalender.ctxt new file mode 100644 index 00000000..2acaed79 --- /dev/null +++ b/Info/10/2/WiederholungenJava/Spruechekalender/Spruechekalender.ctxt @@ -0,0 +1,9 @@ +#BlueJ class context +comment0.target=Spruechekalender +comment1.params= +comment1.target=Spruechekalender() +comment2.params= +comment2.target=void\ naechsterMonat() +comment3.params= +comment3.target=void\ gibSpruchAus() +numComments=4 diff --git a/Info/10/2/WiederholungenJava/Spruechekalender/Spruechekalender.java b/Info/10/2/WiederholungenJava/Spruechekalender/Spruechekalender.java new file mode 100644 index 00000000..3c0113c2 --- /dev/null +++ b/Info/10/2/WiederholungenJava/Spruechekalender/Spruechekalender.java @@ -0,0 +1,28 @@ +class Spruechekalender { + int monat; + String spruch; + + Spruechekalender() { + monat = 1; + spruch = "Auf los gehts los!"; + } + + void naechsterMonat() { + tag = tag + 1; + // TODO: Speichere den naechsten Spruch in der Variable spruch + } + + void gibSpruchAus() { + System.out.println(spruch); + } + + // TODO: Ergaenze die gibNaechsterSpruch Methode. + // Sie soll zum aktuellen Monat einen passenden Spruch zurueckgeben. + // Im vierten Monat soll "April, April, der macht was er will!" zurueckgegeben werden. + // Denk dir mindestens 3 weiter Sprueche aus. + // Wenn es keinen speziellen Spruch gibt soll "Schoener <monar>. Monat" + // zurueck gegebenwerden. + + // TODO: Ergaenze die Methode gibAllesAus. + // Die Methode soll alle Sprueche der Monate ausgeben. +} diff --git a/Info/10/2/WiederholungenJava/Spruechekalender/package.bluej b/Info/10/2/WiederholungenJava/Spruechekalender/package.bluej new file mode 100644 index 00000000..df9b4485 --- /dev/null +++ b/Info/10/2/WiederholungenJava/Spruechekalender/package.bluej @@ -0,0 +1,32 @@ +#BlueJ package file +editor.fx.0.height=0 +editor.fx.0.width=0 +editor.fx.0.x=0 +editor.fx.0.y=0 +objectbench.height=357 +objectbench.width=610 +package.divider.horizontal=0.6 +package.divider.vertical=0.6308316430020284 +package.editor.height=615 +package.editor.width=483 +package.editor.x=643 +package.editor.y=3 +package.frame.height=1049 +package.frame.width=634 +package.numDependencies=0 +package.numTargets=1 +package.showExtends=true +package.showUses=true +project.charset=UTF-8 +readme.height=60 +readme.name=@README +readme.width=49 +readme.x=10 +readme.y=10 +target1.height=70 +target1.name=Adventskalender +target1.showInterface=false +target1.type=ClassTarget +target1.width=150 +target1.x=70 +target1.y=10 diff --git a/Info/10/2/WiederholungenJava/Vorlage_Mondrian b/Info/10/2/WiederholungenJava/Vorlage_Mondrian new file mode 120000 index 00000000..5df81f5e --- /dev/null +++ b/Info/10/2/WiederholungenJava/Vorlage_Mondrian @@ -0,0 +1 @@ +../../Copyrighted/Cornelson/2_1_Vorlagen_BlueJ_Java/2_1_A05_Mondrian_Vorlage/
\ No newline at end of file diff --git a/Info/10/2/WiederholungenJava/img/cowfortune.png b/Info/10/2/WiederholungenJava/img/cowfortune.png Binary files differnew file mode 100644 index 00000000..b0e89a7a --- /dev/null +++ b/Info/10/2/WiederholungenJava/img/cowfortune.png diff --git a/Info/10/2/WiederholungenJava/img/fortune.png b/Info/10/2/WiederholungenJava/img/fortune.png Binary files differnew file mode 100644 index 00000000..a47cff1f --- /dev/null +++ b/Info/10/2/WiederholungenJava/img/fortune.png diff --git a/Info/10/2/WiederholungenJava/img/mondrian_II_red_blue_yellow.jpg b/Info/10/2/WiederholungenJava/img/mondrian_II_red_blue_yellow.jpg Binary files differnew file mode 100644 index 00000000..12795d5f --- /dev/null +++ b/Info/10/2/WiederholungenJava/img/mondrian_II_red_blue_yellow.jpg diff --git a/Info/10/2/WiederholungenJava/slides.md b/Info/10/2/WiederholungenJava/slides.md new file mode 100644 index 00000000..9c7c9134 --- /dev/null +++ b/Info/10/2/WiederholungenJava/slides.md @@ -0,0 +1,150 @@ +--- +author: Florian Fischer +theme: metropolis +aspectratio: 169 +header-includes: | + \makeatletter + \beamer@ignorenonframefalse + \makeatother +--- + +## Wiederholung - Java {.standout} + +\centering +\scalebox{10}{ +\faIcon{java} +} + +## Peinliche Spruechekalender + +::: 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{tag: 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 + ("" nicht vergessen) `"April, April der macht was er will!"` zurück gibt + **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 - Struktorgram + +{.center height=90%} |
