Aktuelles
- Diese Seite ist in den Learning-Campus umgezogen!
- Vorlesung 11:30-13:00
- Ihre Erwartungen
MATERIALIEN zur Vorlesung.
Vorlesung - Inhalt und Termine
I. Imperative Programmierung in C - Wintersemester | |
---|---|
Organisatorisches... und Installationshinweise Installationssupport im Praktikum (Bitte vorher installieren (siehe MATERIALIEN) und mich nur bei Problemen kontaktieren) | 7.10. 7.10. |
1. Was ist ein Computer? Erste Schritte. | V01: 14.10. | Ü 01-04 |
2. Operatoren, Programmiersprachen, Ablaufdiagramme | V02: 21.10. | Ü 05-07 |
3. for-Schleife, Unterprogramme, Funktionen | V03: 28.10. | Ü 08-09 |
4. Präprozessor, Compiler, Linker | V04: 4.11. | Ü 10-11 |
5. Zahlentypen, mathematische Funktionen | V05: 11.11. | Ü 12-14 |
6. Arrays | V06: 18.11. | Ü 15-18 |
7. Zeichenketten | |
V07: 25.11. | Ü 19-20 | |
8. Strukturen, Aufzählungen | |
9. Zeiger, dynamischer Speicher | V08: 2.12. | Ü 21-24 |
10. Zusammenfassung: die Sprache C | V09: 9.12. |
weiterführend (optional): 11. Was ist Informatik? | weiterführend |
12. Datenstrukturen und Algorithmen Termin zum Aufholen der Übungen, Ausblick Java | V10: 16.12. | Ü 25-26 23.12. |
weiterführend (optional): 13. Automaten und formale Sprachen 14. Fehler vermeiden, Fehler finden | weiterführend |
zusätzliches Material zum Selbststudium:
Wichtig:
| |
II. Objektorientierte Programmierung in Java - Sommersemester | |
1. JDK, Eclipse und Hello World | V11: tba, erste Woche ab 15.3. |
2. Objekte und Klassen | |
3. Typen und Variablen | |
4. Kontrollstrukturen: Verzweigungen und Schleifen | V12: 25.3. |
5. Arrays | |
6. Konsolenprogramme | |
7. Konstruktoren | V13: 8.4. |
8. Methoden | |
9. lokale Variablen, Attribute und statische Attribute | V14: 15.4. |
10. Datenkapselung und Sichtbarkeit von Attributen und Methoden | |
11. Listen | V15: 22.4. |
12. Vererbung | V16: 29.4. |
13. Interfaces | V17: 6.5. |
14. Generics | |
15. Exceptions | |
GUI-Programmierung mit JavaFX | |
16. Installation JavaFX SDK, Scene Builder und e(fx)clipse-Plugin | V18: 20.5. |
17. Erste Schritte mit JavaFX | |
18. Properties und Bindings | |
19. FXML | V19: 27.5. |
20. Layout-Container | |
21. Controls | |
22. SceneBuilder und MVC | |
23. Diagramme | V20: 10.6. |
24. Tabellen | |
optional: Weiterführende Themen | |
Fragen, Probleme, Diskussion! | 17.6. |
Projektstudienarbeit - Meilensteine | |
Prüfungsanmeldung | siehe OSC |
Abgabe Abstract Abgabe über Upload: Bitte rechtzeitig vor Abgabe
| 6.5. bis 23:59 |
Abgabe
| So 27.6. bis 23:59 |
Projekt-Präsentationen
| Di 29.6. & Do 1.7. |
Literatur
- [IT] "IT-Handbuch für Fachinformatiker" von Sascha Kersken, Galileo Computing, ISBN 978-3-8362-1744-6 (download: http://openbook.galileocomputing.de/it_handbuch/)
- [C] "C von A bis Z" von Jürgen Wolf, Galileo Computing, ISBN 978-3-8362-1411-7 (download: http://openbook.galileocomputing.de/c_von_a_bis_z/)
- [JL] Videos von Jörn Loviscach (https://www.j3l7h.de/videos.html)
- [JavaInsel] "Java ist auch eine Insel" von Christian Ullenboom, Galileo Computing, ISBN 978-3-8362-1802-3 (download: http://openbook.galileocomputing.de/javainsel/)
Weitere Infos
- Launch multiple Programms using a Batch File
- Update JavaFX GUI Periodically (e.g. every second)
- UML-Dokumentation:
- siehe Wikipedia zu den verschiedenen Diagrammtypen
- Überblick: https://www.sparxsystems.de/UML_Grundlagen.pdf
- auch für C: https://www.embedded-software-engineering.de/software-engineering-mit-uml-und-c-im-einsatz-fuer-embedded-systeme-a-855405/
- Bitte eigenen Laptop in Vorlesung/Praktikum mitbringen!
- Klassiker für C: "The C Programming Language" von Brian W. Kernighan, Dennis M. Ritchie, 2. Auflage. Prentice Hall, Englewood Cliffs, N.J. 1988, ISBN 0131103628.
- Cheat Sheet zu C: https://www.math.brown.edu/~jhs/ReferenceCards/CRefCard.v2.2.pdf
- Cheat Sheet zu Java: http://introcs.cs.princeton.edu/java/11cheatsheet/
Tipps zu den Lernmaterialien
- Der Ordner MATERIALIEN wird über die Hochschul-Cloud (LRZ Sync+Share) bereitgestellt.
- mit Ordner auf Festplatte synchronisieren: Windows-PC, Linux-PC, MAC
- Android (Google PlayStore), iOS (Apple App-Store)
- Info unter: https://www.th-rosenheim.de/intranet/einrichtungen/rechenzentrum/it-services/zentrale-speichermoeglichkeiten/hochschul-cloud/
- Watch YouTube videos with higher speed
Inverted Classroom
- Inverted Classroom:
- Inverted Classroom als moderne digitale Lehrmethode (auf YouTube) 3:09
- https://de.wikipedia.org/wiki/Umgedrehter_Unterricht
- Workload-Berechnung "Ingenieurinformatik 2" nach Bologna (8 CP = 240h Arbeit auf 24 Wochen):
- Präsenz: 4h/Woche (4h*24 = 96h)
- Selbststudium: 6h/Woche (6h*24 = 144h)
- Wieviel Zeit sollte ich in einem Bachelor-Studium aufwenden? Workload-Berechnung nach Bologna...
Weiterführende Empfehlungen
- MOOC: Modelling and Simulation using MATLAB® auf iversity
- MOOC: Electronic Interfaces: Bridging the Physical and Digital Worlds auf edX (MIT, Harvard, ...), hier wird ein Roboter mit dem MSP430 gebaut: Teaser Video
- MOOC: Embedded Systems - Shape The World auf edX (MIT, Harvard, ...)
- MOOC: Introduction to Programming (Java) auf Udacity
- MOOC: Algorithmen und Datenstrukturen mit Java auf iversity
I. Imperative Programmierung in C
Vorlesung 1
1. Was ist ein
Computer? Erste Schritte.
Ergänzungen (optional zum Üben und Vertiefen):
- Skript
- Was ist ein Computer? 7:04
- Binärsystem, Bit 5:17
- Byte, Kilobyte 5:50
- weiter Byte, Kilobyte 7:55
- PC versus Embedded 10:04
Hinweis: Die Programmierung eines Microcontrollers lernen Sie später in der Vorlesung "Mikrocomputertechnik". Ignorieren Sie im folgenden Begriffe wie Watchdogtimer, Taste, Pins, Register und im Code deren vordefinierte Variablennamen, z.B. WDTCTL, WDTPW, WDTHOLD, P1IN, P1DIR, P1OUT usw.
- C, Variablen, Typen 10:45
- weiter C, Variablen, Typen 4:34
- if-Verzweigung 10:22
- weiter if-Verzweigung 1:47
- while-Schleife 8:21
- weiter while-Schleife, Endlosschleife 4:09
- Demo (ohne Microcontroller): Erstes C-Programm mit Schleife mit Debugger analysiert ab 3:07 bis 17:15 (14:18)
Ergänzungen (optional zum Üben und Vertiefen):
- Terabyte und Tebibyte 9:18
- ein Zeichen gleich ein Byte, oder auch nicht 11:31
- Simulator, Debugger, Einzelschritt 14:56
- if-else-Verzweigung 17:55, Material
- Erste C-Programme, Zuweisung, Einzelschritt-Debugger, while, if 44:24, Material
- Wurzelberechnung in ganzen Zahlen; int, if, while 35:52, Material
- Beispiele zu Codierung von Daten, siehe auch [IT, Codierung von Daten: Kap. 1.3]
- Bild: LCD Pixel, https://commons.wikimedia.org/wiki/File%3ALcd.jpg
- Bild: RGB-Codierung: https://wiki.selfhtml.org/wiki/Grafik/Farbpaletten
- Ton: Schall, https://de.wikipedia.org/wiki/Schall
- Text: ASCII-Codierung, https://de.wikipedia.org/wiki/American_Standard_Code_for_Information_Interchange
- Zahlen: int in C, [C, Kap.5.2]
- Microcontroller MSP430 auf dem LaunchPad (von Texas Instruments):
- Mainboard eines PC:
- Intel Chipsatz:
Vorlesung 2
2. Operatoren,
Programmiersprachen, Ablaufdiagramme
PUSH 3 ; Lege den Wert 3 auf den Stack
PUSH 2 ; Lege den Wert 2 auf den Stack
PUSH 1 ; Lege den Wert 1 auf den Stack
MOV $3, 0 ; Speicherstelle 3 zurücksetzen
LBL start ; Sprungmarke setzen
POP B ; Wert vom Stack in B
JR ende ; Ende, wenn Stack leer
ADD $3, B ; Inhalt von B zu $3 addieren
JMP start ; Schleife: nächsten Wert verarbeiten
LBL ende ; Sprungmarke setzen
HLT ; Programm beenden
- Skript
- Zahlensysteme in C 8:51
- Operatoren in C 10:13
- Operatoren in C, Short Circuit, Präzedenz 10:12
- Inkrement, Dekrement, Compound Assignment 4:57
- Zoo der Programmiersprachen 8:42
- JavaScript, PHP, BASIC, Assembler, MATLAB(R) 9:50
- grafische Programmierung, Simulink, Datenflussdiagramm 3:33
- Pseudocode 1:48
- imperative Programmiersprachen, Skriptsprachen, dynamische Typisierung 9:26
- Flussdiagramm, Struktogramm 9:56
Ergänzungen (optional zum Üben und Vertiefen):
- Programmablaufplan, Flussdiagramm, Activity Diagram, Maximum bestimmen 27:44
- Flussdiagramm, Primzahltest 24:28, Material
- Operatoren, Präzedenz, Short-Circuit-Auswertung 22:08
- Flussdiagramm, Struktogramm, Eingabe in Schleife 24:04
- Flussdiagramm: https://de.wikipedia.org/wiki/Programmablaufplan, zum Erstellen z.B.: draw.io, Lucidchart oder ähnliches
- Struktogramm: https://de.wikipedia.org/wiki/Nassi-Shneiderman-Diagramm, zum Erstellen z.B. Structorizer (Download über Java Web Start)
- weitere Programmiersprachen: Hello World and 99 Bottles of Beer
- Beispiel: Assembler-Code für den Virtual Processor, siehe auch [IT, Kap.2.4.3: Der virtuelle Prozessor]:
- Register: 2 Datenregister, 1 Statusregister, 1 Stack-Pointer.
- adressierbarer Arbeitsspeicher (mit Stack-Speicher)
PUSH 2 ; Lege den Wert 2 auf den Stack
PUSH 1 ; Lege den Wert 1 auf den Stack
MOV $3, 0 ; Speicherstelle 3 zurücksetzen
LBL start ; Sprungmarke setzen
POP B ; Wert vom Stack in B
JR ende ; Ende, wenn Stack leer
ADD $3, B ; Inhalt von B zu $3 addieren
JMP start ; Schleife: nächsten Wert verarbeiten
LBL ende ; Sprungmarke setzen
HLT ; Programm beenden
Vorlesung 3
3. for-Schleife, Unterprogramme, Funktionen
Ergänzungen (optional zum Üben und Vertiefen):
- Skript, Material
- while-, do...while-, for-Schleifen 12:11
- Schleifen, Sichtbarkeit, break, continue 3:41
- Unterprogramme, prozedurale Programmierung 12:32
- Code Recycling, API 10:11
- Funktionen in C, return 11:37
- Funktionen, void, main 12:23
- mehrere Parameter, return als GOTO 7:05
- Call by Value, statische Variablen 6:01
- Deklaration, Definition 3:18
Ergänzungen (optional zum Üben und Vertiefen):
- nochmal Funktion, Deklaration, Definition 14:04
- nochmal Funktion 3:29
- Programmierbeispiel Teil 1, Top-Down-Entwicklung, MSP430-Projekt einrichten, C-Funktionen 33:10
- Programmierbeispiel Teil 2, Funktionsdefinition, Funktionsdeklaration, Header-Datei 40:40
- Programmierbeispiel Teil 3, Include-Guards, Präprozessor.avi 13:28
- break, continue, return in Schleifen 12:44, Material
- nächste Zweierpotenz, Schleifen, while, do, for 49:59, Material
- Funktionen in C, Deklaration, Definition; while, do, for 48:03, Material
- Fibonacci-Folge, Rekursion, statische Variablen 28:08
- C-Funktionen entrümpeln 14:31, Material
Vorlesung 4
4. Präprozessor, Compiler, Linker
Ergänzungen (optional zum Üben und Vertiefen):
- Skript, Material
- Übersetzung, Compiler, Interpreter 9:29
- Übersetzung von C und C++ 14:03
- weiter Übersetzung von C und C++ 4:01
- Präprozessor, #include, #define 14:50
- weiter Präprozessor, #include-Guards 14:41
- C-Compiler, Fehler, Warnungen 11:24
- Linker, Funktionsnamen 8:07
- Sichtbarkeit static, extern 14:23
Ergänzungen (optional zum Üben und Vertiefen):
- static, extern?
- Erklärung: http://www.inf.fu-berlin.de/lehre/WS11/OS/slides/OS_Declarations_in_C_.pdf
- Beispiel extern: https://stackoverflow.com/questions/1433204/how-do-i-use-extern-to-share-variables-between-source-files
- Compiler, Linker; Funktionsweise, Fehler 9:14
- static-Variablen in Funktionen 26:39, Material
- mehrere C-Dateien, Header-Dateien, #include, Include-Guards 55:26, Material
- extern; zwei Verwendungen von static; Linker-Fehlermeldungen 25:36, Material
Vorlesung 5
5. Zahlentypen, mathematische Funktionen
Ergänzungen (optional zum Üben und Vertiefen):
- Skript, Material
- Ganzzahlige Typen, Zweierkomplement 14:10
- weiter Zweierkomplement 6:11
- signed und unsigned char, short, int, long, long long 13:39
- Überlauf, Teilen durch Null 5:05
- automatische Umwandlungen bei Ganzzahlen 11:50
- weiter automatische Umwandlungen bei Ganzzahlen 4:42
- Festkomma und Gleitkomma 13:59
- float und double 13:01
- keine FPU 4:09
- eingebaute mathematische Funktionen 11:07
- Division Gleitkomma und Integer, Casting 7:40
- Rundungsfehler, Infinity (INF), Not a Number (NaN) 7:53
Ergänzungen (optional zum Üben und Vertiefen):
- Beispiele Zweierkomplement, Überlauf, signed und unsigned 27:50
- Gleitkommazahlen, float, double, Rundungsfehler, INF, NaN 23:28
- bitweise logische Operationen; hexadezimal 11:23
- Beispiele Zweierkomplement; negative Binärzahlen 11:44
- Ganze Zahlen: Wikipedia: Zweierkomplement
- Reelle Zahlen:
Vorlesung 6
6. Arrays
7. Zeichenketten (Teil 1)
Ergänzungen zu Arrays (optional zum Üben und Vertiefen):
- Skript, Material
- Arrays 1D, 2D, 3D 10:34
- weiter Arrays 12:07
- Arrays initialisieren 10:34
- Arrays kopieren, memcpy 9:46
- Übergabe und Rückgabe von Arrays 12:27
- Arrays in Aktion 6:11
7. Zeichenketten (Teil 1)
Ergänzungen zu Arrays (optional zum Üben und Vertiefen):
- größten Wert in Array bestimmen 9:43
- zweidimensionales Array, stückweise lineare Funktion, lineare Interpolation 23:41, Material
- Array; summieren; Maximum bestimmen 41:31, Material
- Ist Eintrag zweimal in Array 12:12, Material
Vorlesung 7
7. Zeichenketten (Teil 2)
8. Strukturen, Aufzählungen
Ergänzungen zu Zeichenketten (optional zum Üben und Vertiefen):
- strcat, Strings anhängen 6:18
- puts, printf, Zeichenketten ausgeben 10:54
- atoi, sprintf, Umwandlung Zeichenketten, Zahlen 13:02
8. Strukturen, Aufzählungen
- Skript, Material
- struct, Initialisierung 13:39
- struct zuweisen, übergeben, vergleichen 11:53
- Array aus struct 4:53
- enum, Aufzählungen 13:08
- switch, weiter enum, Aufzählungen 12:55
Ergänzungen zu Zeichenketten (optional zum Üben und Vertiefen):
- Suchen und Ersetzen in Zeichenketten in C, Teil 1 65:42, Material
- Suchen und Ersetzen in Zeichenketten in C, Teil 2, genaue Grenzen, Off-by-one-Fehler 32:42, Material
- Arrays und Zeichenketten; strlen 47:17, Material
- Suche in Zeichenkette; UND mit short circuit, Material
- struct und enum am Beispiel Katalog und Warenkorb 38:23, Material
- Kästchenroboter, Teil 1, 2D-Array, struct, enum 57:22, Material
- Kästchenroboter, Teil 2, switch, putchar 49:23, Material
- Kästchenroboter, Teil 3, Schleifen, struct verwenden 38:16, Material
- struct für Buch; ISBN-Nummer prüfen 50:24, Material
- struct für Massenpunkte; Schwerpunktsberechnung; Header 36:47, Material
Vorlesung 8
9. Zeiger, dynamischer Speicher
Ergänzungen (optional zum Üben und Vertiefen):
- Skript, Material
- Zeiger, Pointer 14:43
- NULL, ungültige Zeiger 2:49
- Zeigerarithmetik 10:50
- weiter Zeigerarithmetik 10:13
- Dynamischer Speicher, Variable Length Arrays 4:04
- weiter dynamischer Speicher, malloc, free 14:23
- weiter dynamischer Speicher, malloc, free 14:28
- dynamischer Speicher für struct 11:25
Ergänzungen (optional zum Üben und Vertiefen):
- Zeiger und Arrays 24:08
- Kästchenroboter, Teil 4, malloc, Zeiger wie Arrays 24:59, Material
- Fingerübungen zu Zeigern und Arrays 19:28, Material
- Zeiger verwenden, Speicher reservieren 51:20, Material
Vorlesung 9
10. Zusammenfassung: die Sprache C
Ergänzungen (optional zum Üben und Vertiefen):
- Skript, Material
- Präprozessor, Compiler, Linker, include 10:43
- weiter include, Header 7:00
- static, extern 11:04
- grundlegende Typen, char, short, int, long, bool, float, double 7:36
- Operatoren, Präzedenz 20:34
- enum, Arrays 10:48
- Zeichenketten, struct 8:46
- if, switch, while, for, Verzweigungen, Schleifen 15:05
- Funktionen, Deklaration, Definition, return, mathematische Funktionen 15:32
- Funktionen für Ausgabe, Strings, main 9:45
- Zeiger, NULL, malloc, free 37:26
Ergänzungen (optional zum Üben und Vertiefen):
- Binärzahl aus Zeichenkette in Integer wandeln 19:42, Material
- Morse-Code per Programm; Array von struct 38:48, Material
- Festkommazahlen; Wurzel selbstprogrammiert 41:50, Material
Weiterführend (optional):
11. Was ist Informatik?
- Skript
- Theoretische, technische, praktische, angewandte Informatik 11:14
- Computer Science, Software Engineering, Information Technology 10:09
Vorlesung 10
12. Datenstrukturen und Algorithmen
- Skript
- Datenstrukturen, Array, Queue, Stack 15:46
- Baum als Datenstruktur 12:47
- Algorithmen 12:27
- Bubblesort, Quicksort, Laufzeit 29:23
- Iteration und Rekursion 6:27
- Komplexität, P und NP 6:45
- Optimierung, Profiler 5:02
- Wir programmieren in der Vorlesung die Datenstruktur "einfach verkettete Liste". Lesen Sie bitte dazu vorab [C, Kap. 21.1].
Ergänzungen (optional zum Üben und Vertiefen):
- Informatik, Datenstrukturen, Array, struct, Warteschlange, Stack, Baum 15:02
- Datenstruktur Sparse Matrix, dünn besetzte Matrix; Implementierung in C; malloc 50:15, Material
- Algorithmen, Suchen und Sortieren, Bubble Sort, Quicksort, Laufzeit, O(n log(n)) 76:17, Material
- Warteschlange mit Array programmieren 36:29, Material
- Warteschlange mittels struct als Bibliotheksfunktion; Zeiger; malloc 45:12, Material
- Datumsberechnungen selbstprogrammiert 29:28, Material
- Weg aus Labyrinth programmieren 52:24, Material
- binäre Suche programmieren; Laufzeitkomplexität 38:51, Material
Weiterführend (optional):
13. Automaten und
formale Sprachen
Ergänzungen (optional zum Üben und Vertiefen):
14. Fehler vermeiden, Fehler finden
Ergänzungen (optional zum Üben und Vertiefen):
- Skript, Material
- Endliche Automaten 35:16
- Formale Sprachen, Syntaxdiagramm, akzeptierende Automaten 33:41
- HTML, XML, JSON 14:31
Ergänzungen (optional zum Üben und Vertiefen):
- Formale Sprachen, reguläre Ausdrücke, endliche Automaten, Pumping-Lemma 66:51, Material
- kontextfreie Sprachen, Syntaxdiagramme für C, Nichtterminalsymbole, Pumping-Lemma 37:25
- Parsen und Auswerten von arithmetischen Ausdrücken, Implementierung 31:36, Material
- Aufzugtür als endlicher Automat in C 35:31, Material
14. Fehler vermeiden, Fehler finden
- Skript, Material
- Turings Halteproblem 29:29
- Code Conventions, Styleguides, ungarische Notation, MISRA 29:02
- defensive Programmierung, assert 18:09
Ergänzungen (optional zum Üben und Vertiefen):
II. Objektorientierte Programmierung in Java
Vorlesung 11
Zu den Übungsaufgaben in Teil II.:
Zur Motivation: Java Code Hard - Rap
1. JDK, Eclipse und Hello World
- Corona-Update: Sie sollen vorab alle Übungen bearbeiten und sich die Lösungen ansehen. Fragen notieren und im Online-Meeting klären!
- Die Aufgabenstellung samt Lösung finden Sie sofern nicht anders vermerkt in den Videos.
- Sie können im Praktikum an Ihrem Projekt arbeiten bzw. Fragen mit mir klären.
Es gibt Aufgaben,welche Sie vorher machen müssen (HA-Ü = Hausfgaben-Übung) undwelche wir in der Präsenzveranstaltung (Ü) machen.Sie müssen sich für die Präsenzübung (Ü) die Aufgabenstellung vorab ansehenDie Lösung der Präsenzübung (Ü) erarbeiten Sie sich (mit meiner Hilfe) in der Präsenzveranstaltung, also Vorlesung/PraktikumDen ausführlichen Lösungsvorschlag im Video müssen Sie nacharbeiten
1. JDK, Eclipse und Hello World
- OOP in Java #01.01 - Was ist JDK? Eclipse? 5:31
- optional, haben Sie schon gemacht: OOP in Java #01.02 - Installation JDK und Eclipse 14:36
- OOP in Java #01.03 - Hello World ohne Eclipse IDE 10:34
- OOP in Java #01.04 - Hello World mit Eclipse IDE 10:29
- Bitte meinen Kanal abonnieren und die 🔔 drücken (Liken 👍 und kommentieren 😊):
Dieses Konzept ist neu und wichtig! Von der Datenhaltung her ist eine Klasse ähnlich zu der Structure aus C:
- OOP in Java #02.01 - Objekte und Klassen, Teil 1 15:54
- OOP in Java #02.02 - Objekte und Klassen, Teil 2 9:18
- OOP in Java #02.03 - Objekte und Klassen, Zusammenfassung 1:57
- OOP in Java #02.04.01 - Beispiel: Vektor als Objekt in Java (Demo) 25:04
- OOP in Java #02.04.02 - Beispiel: Vektor als Objekt in Java (Demo, Teil 2) 9:47
- OOP in Java #02.05.01 - Beispiel Student, Teil 1: OOA, OOD, OOP, UML Klassendiagramm mit Aggregation 6:13
- OOP in Java #02.05.02 - Beispiel Student, Teil 2: OOA, OOD, OOP, UML Klassendiagramm mit Aggregation 13:00
- Ü 01 Student als Objekt: OOP in Java #02.05.03 - Beispiel Student, Teil 3: OOP-Demo von UML-Klassendiagramm 16:43
- Ü 02 Messdatensatz als Objekt:
3. Typen und Variablen
Bitte Zeit nehmen! Es wird viel wiederholt, was Sie aus der Programmierung von C schon kennen sollten bzw. ähnlich ist!
- OOP in Java #03.01 - Datentypen in Java 2:04
- OOP in Java #03.02 - Primitive Datentypen: Übersicht 4:48
- OOP in Java #03.03 - Primitive Datentypen: Operatoren und Präzedenz 6:56
- OOP in Java #03.04 - Datentyp boolean für Wahrheitswerte 3:32
- OOP in Java #03.05 - Datentypen byte, short, int, long für ganze Zahlen 10:11
- OOP in Java #03.06 - Operatoren Inkrement, Dekrement 4:08
- OOP in Java #03.07 - Datentypen float, double für Gleitkommazahlen 15:39
- OOP in Java #03.08 - Datentyp char für ASCII-/Unicode-Zeichen 15:34
- OOP in Java #03.09 - Datentyp String für Zeichenketten 4:50
- OOP in Java #03.10 - Aufzählungs-Datentyp enum (Enumeration) 3:50
- OOP in Java #03.11 - Variablen und Speicher: Deklaration, Zuweisung, Initialisierung 10:41
- OOP in Java #03.12 - Konstante Variablen mit final 1:53
- OOP in Java #03.13 - Objekt-Variablen als Referenz zum Objekt im Speicher 11:21
- OOP in Java #03.14 - Objekt Referenz null und NullPointerException (NPE) 2:24
- OOP in Java #03.15 - Typen und Variablen: Zusammenfassung 2:19
Vorlesung 12
Bitte Zeit nehmen! Es wird viel wiederholt, was Sie aus der Programmierung von C schon kennen sollten bzw. ähnlich ist!
4. Kontrollstrukturen: Verzweigungen und Schleifen
- OOP in Java #04.01 - Kontrollstrukturen und Programmablaufplan 8:34
- OOP in Java #04.02 - if-Verzweigung 10:48
- OOP in Java #04.03 - switch-Verzweigung 4:14
- OOP in Java #04.04 - while-Schleife 11:37
- OOP in Java #04.05 - do-while-Schleife 5:32
- OOP in Java #04.06 - for-Schleife 8:31
- OOP in Java #04.07 - Schleife: Ablaufsteuerung mit break und continue 4:46
- HA-Ü 03 PAP programmieren: OOP in Java #04.08 - Beispiel Schleife, Verzweigung: Programmablaufplan programmieren 6:17
5. Arrays
- OOP in Java #05.01 - Arrays: Konzept 4:43
- OOP in Java #05.02 - Arrays in Java: Deklaration, Initialisierung und Index Zugriff 12:26
- OOP in Java #05.03 - Arrays in Java: Iterieren mit for Schleife (Demo) 5:31
- HA-Ü 04 Mittelwert: OOP in Java #05.04 - Beispiel Array: Mittelwert berechnen 7:15
- OOP in Java #05.05 - Mehrdimensionale Arrays 6:08
- Ü 05 n-dim. Vektor als Objekt:
- OOP in Java #05.06.01 - Beispiel Array: n-dimensionaler Vektor als Objekt, Erklärung 7:27
- OOP in Java #05.06.02 - Beispiel Array: n-dimensionaler Vektor als Objekt, Lösung (Demo) 32:34
- Ü 06 Matrix als Objekt:
6. Konsolenprogramme
- OOP in Java #06.01 - Konsolenprogramme und EVA Prinzip 3:09
- OOP in Java #06.02 - Ausgabe auf Konsole System.out.println(), Eingabe von Konsole Scanner.next() 13:15
- OOP in Java #06.03 - Javaprogramm als Executable ausliefern: Runnable JAR mit Batch-Datei 6:28
- HA-Ü 07 kleine Konsolenprogramme:
- OOP in Java #06.04.01 - Konsolenprogramme: kurze Wiederholung und Aufgabenstellung 2:37
- OOP in Java #06.04.02 - Konsolenprogramme: Rechteck-Rechner (Übung mit Lösung als Demo) 9:06
- OOP in Java #06.04.03 - Konsolenprogramme: Kreis Rechner (Übung mit Lösung als Demo) 6:41
- OOP in Java #06.04.04 - Konsolenprogramme: Download-Rechner (Übung mit Lösung als Demo) 13:00
- Ü 08 Quatschen mit Clara:
Vorlesung 13
7. Konstruktoren
- OOP in Java #07.01 - Konstruktoren: Deklaration und Beispiel 7:50
- OOP in Java #07.02 - Konstruktoren: Beispiel Vector (Demo in Eclipse) 4:51
- OOP in Java #07.03 - Default-Konstruktor 2:22
- OOP in Java #07.04 - Default-Werte bei Attributen vs. lokale Variablen 4:18
- OOP in Java #07.05 - Konstruktor in Eclipse erzeugen 1:21
- OOP in Java #07.06 - Mehrere Konstruktoren 4:36
- HA-Ü 09 Student: OOP in Java #07.07 - Konstruktoren: Beispiel Student mit Address (Übung mit Lösung als Demo) 14:05
- Ü 10 TemperatureData: OOP in Java #07.08 - Konstruktoren: Beispiel Messdatensatz (Übung mit Lösung als Demo) 5:40
- Ü 11 n-dim. Vector: OOP in Java #07.09 - Konstruktoren: Beispiel n-dimensionaler Vektor (Übung mit Lösung als Demo) 4:43
8. Methoden
- OOP in Java #08.01 - Methoden: Deklaration und Beispiele 6:52
- OOP in Java #08.02 - Methoden-Signatur 5:14
- OOP in Java #08.03 - Methoden-Aufruf 2:36
- OOP in Java #08.04 - Methoden: Beispiel Messdatensatz (Übung mit Lösung als Demo) 12:10
- OOP in Java #08.05 - Attribut-Zugriff mit Getter/Setter 11:21
- Ü 12 TemperatureData - Getter/Setter: OOP in Java #08.06 - Getter/Setter: Beispiel Messdatensatz (Übung mit Lösung als Demo) 3:40
- OOP in Java #08.07 - Call By Value vs. Call By Reference 12:51
- OOP in Java #08.08 - statische Methoden bzw. Klassen Methoden, Beispiel Vector 10:26
- Ü 13 TemperatureData - statische Methode: OOP in Java #08.09 - statische Methoden: Beispiel Messdatensatz (Übung mit Lösung als Demo) 8:56
- OOP in Java #08.10 - main-Methode mit Argumenten von Konsole 10:09
- OOP in Java #08.11 - toString-Methode bei Objekten und primitiven Datentypen, Beispiel Vector 10:51
- OOP in Java #08.12 - equals-Methode bei Objekten, Beispiel Vector 9:09
- HA-Ü 14 TemperatureData - equals/toString: OOP in Java #08.13 - equals, toString: Beispiel Messdatensatz (Übung mit Lösung als Demo) 7:29
Vorlesung 14
9. lokale Variablen, Attribute und statische Attribute
- OOP in Java #09.01 - lokale Variablen in Methoden, Gültigkeit 10:56
- OOP in Java #09.02 - Parameter als lokale Variablen 1:58
- OOP in Java #09.03 - lokale Variablen vs. Attribute, Beispiel 9:41
- OOP in Java #09.04 - statische Attribute bzw. Klassenvariablen 2:37
- Ü 15 TemperatureData - Klassenvariable, Konstante: OOP in Java #09.05.01 - statische Attribute: Beispiel Messdatensatz (Übung mit Lösung als Demo) 24:34
- Ü 16 Zusatz: Datei lesen/schreiben:
10. Datenkapselung und Sichtbarkeit von Attributen und Methoden
- OOP in Java #10.01 - Datenkapselung: Konzept 1:59
- OOP in Java #10.02 - Datenkapselung: Beispiel Student 4:36
- OOP in Java #10.03 - Sichtbarkeit von Attributen und Methoden: private, public 3:25
- OOP in Java #10.04 - Sichtbarkeit von Attributen und Methoden: Beispiel Student mit Klassendiagramm 7:06
- OOP in Java #10.05 - Packages 8:50
- OOP in Java #10.06 - Sichtbarkeit mit Packages: private, package-private, public 1:26
- Ü 17 TemperatureData - Sichtbarkeit: OOP in Java #10.07 - Sichtbarkeit: Beispiel Messdatensatz (Übung mit Lösung als Demo) 7:34
Vorlesung 15
11. Listen
- OOP in Java #11.01 - Datenstrukturen in Java: Array, List, Map 3:55
- OOP in Java #11.02 - Liste: Idee 3:11
- OOP in Java #11.03 - einfach verkettete Liste: Konzept 5:19
- OOP in Java #11.04 - einfach verkettete Liste: Beispiel VectorList in Java 13:27
- OOP in Java #11.05.01 - einfach verkettete Liste: VectorList mit Operation add (Aufgabenstellung) 5:04
- OOP in Java #11.05.02 - einfach verkettete Liste: VectorList mit Operation add (Lösung als Demo) 15:56
- HA-Ü 18 Operation remove:
- OOP in Java #11.06.01 - einfach verkettete Liste: VectorList mit Operation remove (Aufgabenstellung) 7:01
- OOP in Java #11.06.02 - einfach verkettete Liste: VectorList mit Operation remove (Lösung als Demo) 17:52
- HA-Ü 19 Operation contains:
- OOP in Java #11.07.01 - einfach verkettete Liste: VectorList mit Operation contains (Aufgabe) 2:52
- OOP in Java #11.07.02 - einfach verkettete Liste: VectorList mit Operation contains (Lösung/Demo) 3:20
- OOP in Java #11.08 - Iterator: Listen durchgehen 6:17
- OOP in Java #11.09 - Iterator: VectorList in Java (Demo) 12:15
- HA-Ü 20 Iterator: OOP in Java #11.10 - Iterator: VectorList (Übung mit Lösung als Demo) 8:09
- OOP in Java #11.11 - Demo: Listen in java.util - LinkedList, ArrayList 5:59
- OOP in Java #11.12 - Demo: Anwendung LinkedList, ArrayList, Iterator 2:49
- OOP in Java #11.13 - Listen in java.util - Iterator mit while- und for-Schleife auch mit Index 3:31
- OOP in Java #11.14 - foreach-Schleife auf Datenstrukturen mit Iterator 3:18
- OOP in Java #11.15 - LinkedList vs. ArrayList 2:59
- Ü 21 TemperatureData - CSV-Datei:
- OOP in Java #11.16.01 - Listen: Messdaten und CSV-Dateien (Aufgabenstellung) 4:03
- OOP in Java #11.16.02 - Listen: Messdaten und CSV-Dateien (Lösung als Demo) 31:31
- Ü 22 CSV-Datei mit TemperatureCsvParser:
Vorlesung 16
12. Vererbung
- OOP in Java #12.01 - Vererbung: Motivation am Beispiel Student 2:46
- OOP in Java #12.02 - Vererbung: Konzept 3:55
- Ü 23 Student mit Vererbung:
- OOP in Java #12.03.01 - Vererbung: Übung Student (Aufgabenstellung) 1:05
- OOP in Java #12.03.02 - Vererbung: Übung Student (Lösung als Demo) 23:26
- OOP in Java #12.04 - Vererbung im UML-Klassendigramm 1:36
- OOP in Java #12.05 - Vererbung: Überschreiben von Methoden 4:34
- Ü 24 Methode überschreiben:
- OOP in Java #12.06.01 - Vererbung: Methode überschreiben: Übung mit Student (Aufgabenstellung) 1:30
- OOP in Java #12.06.02 - Vererbung: Methode überschreiben: Übung mit Student (Lösung als Demo) 8:33
- OOP in Java #12.07 - Vererbung: Polymorphie und dynamische Bindung 8:16
- OOP in Java #12.08 - Vererbung: Konstruktoren 6:18
- OOP in Java #12.09 - Vererbung: Sichtbarkeit von Attributen und Methoden mit protected 4:58
- OOP in Java #12.10 - Vererbung: Operator instanceof und Type-Cast 10:01
- OOP in Java #12.11 - Vererbung: Klasse Object 4:34
- Ü 25 Object - equals/toString überschreiben: OOP in Java #12.12 - Klasse Object: Student equals/toString überschreiben (Übung mit Lösungs-Demo) 5:03
- OOP in Java #12.13 - Vererbung: final 3:02
- OOP in Java #12.14 - Abstrakte Klassen und Methoden mit abstract 7:13
- Ü 26 TemperatureData und CSV-Dateien mit abstrakter Klasse:
- OOP in Java #12.15.01 - CSV-Dateien mit abstraktem CsvParser (Aufgabenstellung) 3:05
- OOP in Java #12.15.02 - CSV-Dateien mit abstraktem CsvParser (Lösung als Demo) 17:00
- OOP in Java #12.16 - Vererbung: Zusammenfassung 1:59
Vorlesung 17
13. Interfaces
- OOP in Java #13.01 - Interfaces: Motivation 2:16
- OOP in Java #13.02 - Interfaces: Deklaration, Implementierung und Verwendung mit Beispiel 14:23
- OOP in Java #13.03 - Interfaces: Beispiel java.util.List 9:57
- OOP in Java #13.04 - Interfaces: Klassendiagramm in UML am Beispiel java.util.List 5:40
- OOP in Java #13.05 - Interfaces vs. Abstrakte Klassen (Zusammenfasung) 3:33
- Ü 27 eigenes Interface:
14. Generics
- OOP in Java #14.01 - Generics: Motivation 5:27
- OOP in Java #14.02 - Generics: Deklaration und Verwendung 7:57
- OOP in Java #14.03 - Generics: CSV-Dateien mit generischem CSVParser (Demo) 15:09
- Ü 28 generische Interfaces:
15. Exceptions
- OOP in Java #15.01 - Exceptions: Motivation 3:48
- OOP in Java #15.02 - Exceptions in Java 5:12
- OOP in Java #15.03 - Demo NullPointerException, ArrayIndexOutOfBoundsException, IOException 3:12
- OOP in Java #15.04 - Exceptions: Auszug aus der Exception-Hierarchie 5:31
- OOP in Java #15.05 - Exceptions: Behandeln mit try/catch 9:32
- OOP in Java #15.06 - Exceptions: Weiterreichen mit throws, Besonderheit bei RuntimeExceptions 5:38
- OOP in Java #15.07 - Exceptions: Error vs. RuntimeException vs. Exception 3:06
- OOP in Java #15.08 - Exceptions: Eigene Exceptions 8:26
- Ü 29 Exception-Handling in Ratespiel
- OOP in Java #15.09.01 - Exceptions: Übung Exception-Handling in Ratespiel (Aufgabenstellung) 2:32
- OOP in Java #15.09.02 - Exceptions: Übung Exception-Handling in Ratespiel, Lösung Teil 1: Ratespiel 15:26
- OOP in Java #15.09.03 - Exceptions: Übung Exception-Handling in Ratespiel, Lösung Teil 2: Fehlerbehandlung 21:17
- OOP in Java #15.10 - Exceptions: Zusammenfassung 1:40
Vorlesung 18
16. Installation JavaFX SDK, Scene Builder und e(fx)clipse-Plugin
- bereits in der Installation dabei:
Installation JavaFX SDK(ab JDK 11) bei JDK 8 bis 10 ist nichts zu tun und dieser Schritt zu überspringen!Achtung: gleiche JavaFX Version wie das JDK! z.B. JDK 12 und JavaFX 12Video-Anleitung ab 2:32 (ca. 5 min.)offizielle Doku: https://openjfx.io/openjfx-docs/#IDE-EclipseDownload: https://openjfx.io/
Bei Fehler: Error: JavaFX runtime components are missing, and are required to run this applicationgehe zu "Run > Run Configurations... > Java Application" undtrage folgende "VM arguments" ein:--module-path "\path\to\javafx-sdk-12.0.1\lib" --add-modules javafx.controls,javafx.fxml
- Installation Scene Builder (Version 8.5.0 für Java 8)
- Download und installieren (v8.5.0/Java 8): https://gluonhq.com/products/scene-builder/
- In Eclipse: unter "Window > Preferences > JavaFX > SceneBuilder executable" angeben, wo die EXE von Scene Builder sich befindet.
- optional: Dokumentation und ältere Versionen: https://www.oracle.com/technetwork/java/javase/downloads/javafxscenebuilder-info-2157684.html)
- bereits in der Installation dabei:
Installation e(fx)clipse-Plugin Video-Anleitung (ca. 8 min.) ab 1:44Falls es Fehler gibt muss man evtl. noch angeben, wo das JavaFX SDK und Scene Builder sich befinden:"Window > Preferences > JavaFX"unter "SceneBuilder executable" und "JavaFX 11+ SDK"
optional: weiterführende JavaFX-Dokumentation
- Getting Started with JavaFX: https://docs.oracle.com/javase/8/javafx/JFXST.pdf, online: https://docs.oracle.com/javase/8/javafx/get-started-tutorial/index.html, insbesondere
- Chapter 3 "Hello World, JavaFX Style"
- Chapter 4 "Creating a Form in JavaFX"
- Chapter 5 "Fancy Forms with JavaFX CSS"
- Chapter 6 "Using FXML to Create a User Interface"
- https://docs.oracle.com/javase/8/javase-clienttechnologies.htm
- https://docs.oracle.com/javase/8/javase-books.htm
17. Erste Schritte mit JavaFX
- optional: JavaFX [0] - Ankündigung 2:19
- optional: JavaFX [1] - Passende Java Version 3:03
- JavaFX [2] - Aufbau einer Anwendung 3:28
- JavaFX [3] - Stage und Scene 3:05
- JavaFX [4] - Parent und Node 6:01
- JavaFX [5] Scene und Parent im Code 2:43
- optional: JavaFX [6] - Hinweis zum nächsten Kapitel 0:48
- JavaFX [7] - Label, Button und TextField 4:05
- JavaFX [8] - Slider und TextArea 1:50
- Die JavaFX-Beispielanwendung Ensemble mit Demo-Code zu vielen GUI-Elementen
- JavaFX 01 - Samples-Anwendung Ensemble zur Übersicht der GUI-Komponenten 6:17
- finden Sie unter MATERIALIEN/1_Skripte/Java/17-jdk-8u251-windows-x64-demos.zip
- Download: https://www.oracle.com/java/technologies/javafx-samples.html
- HA-Ü 30 Login-GUI
- JavaFX [9] - Eigenschaften 2:44
- JavaFX [10] - Einführung in Properties 4:16
- JavaFX [11] - Hirarchie von Property 2:29
- JavaFX [12] - Methoden von Properties 6:23
- JavaFX [13] - Property Klassen und Bindings 5:15
- JavaFX [14] - Property.bind in der Praxis 2:34
- JavaFX [15] - Property.bindBidirectional 2:04
- JavaFX [16] - Property.asString 2:44
- JavaFX [17] - ChangeListener und Property.addListener 3:15
- JavaFX [18] - Property.unbind und Property.set 4:28
- Ü-31 Taschenrechner-GUI mit Binding
- optional: JavaFX [19] - Was Nodes alles können 0:33
- optional: JavaFX [20] - Events und EventHandler 4:16
- optional: JavaFX [21] - Nodes Rotieren 2:20
- optional: JavaFX [22] - Nodes Transparent machen 1:17
- optional: JavaFX [23] - Nodes verschieben 1:37
- optional: JavaFX [24] - Nodes strecken und stauchen 2:14
- optional: JavaFX [25] - Breite und Höhe von Nodes 0:35
Vorlesung 19
19. FXML
- JavaFX [36] - FXml - Einführung in XML 3:41
- JavaFX [37] - FXml - FXml Parsen 4:37
- JavaFX [38] - FXml - Import (German) 2:03
- JavaFX [39] - FXml - Properties und Initialisierung 2:39
- JavaFX [40] LayoutContainer - VBox und HBox 3:14
- JavaFX [41] - LayoutContainer - BorderPane (German) 4:48
- JavaFX [42] - LayoutContainer - FlowPane (German) 2:33
- JavaFX [43] - LayoutContainer - ScrollPane (German) 2:40
- JavaFX [44] - LayoutContainer - GridPane (German) 5:56
- JavaFX [45] - Wunschgrößen von Nodes 4:01
- JavaFX [46] - LayoutContainer - StackPane (German) 4:08
- JavaFX [47] - LayoutContainer - TilePane (German) 2:50
- JavaFX [48] - LayoutContainer - AnchorPane (German) 3:38
- JavaFX [49] - Controls (German) 0:45
- JavaFX [50] - Button, Label, TextField, TextArea und Slider 2:10
- JavaFX [51] - CheckBox (German) 0:57
- optional: JavaFX [52] - ToggleButton, RadioButton und ToggleGroup 5:04
- optional: JavaFX [53] - ProgressBar und ProgressIndicator 3:51
- optional: JavaFX [54] - HTMLEditor und ColorPicker 2:53
- optional: JavaFX [55] - ChoiceBox und ListView 3:50
- optional: JavaFX [56] - ComboBox (German) 4:53
veraltet: JavaFX [67] - SceneBuilder: Download (Deutsch) 2:23- JavaFX [68] - SceneBuilder: Nodes und Preview 4:22
- JavaFX [69] - SceneBuilder: Properties (Deutsch) 3:30
- Javafx [70] - Model View Controller (Deutsch) 3:40
- JavaFX [71] - SceneBuilder: Controller (Deutsch) 7:19
- JavaFX [72] - FileChooser (Deutsch) 4:06
Start PÜ-32 Projekt TemperatureData-GUI
- JavaFX 04.1 - Projekt Temperature-Data-GUI: Intro und Mock-Up 3:53
- JavaFX 04.2 - Projekt Temperature-Data-GUI: Neues JavaFX-Projekt mit FXML und Controller 7:07
- JavaFX 04.3 - Projekt Temperature-Data-GUI: FXML mit SceneBuilder und Controller-Methoden aufrufen 11:49
- JavaFX 04.4 - Projekt Temperature-Data-GUI: MVC-Pattern (Model/View/Controller) erklärt im Projekt 3:04
- JavaFX 04.5 - Projekt Temperature-Data-GUI: Projektstruktur mit MVC 10:01
- JavaFX 04.6 - Projekt Temperature-Data-GUI: Sensor-API als externes JAR einbinden und Model-Klasse implementieren 12:55
- JavaFX 04.7 - Projekt Temperature-Data-GUI: Controller-Klasse mit Model implementieren 14:38
Vorlesung 20
23. Diagramme
- JavaFX [26] - Diagramme: Einführung 3:47
- JavaFX [27] - Diagramme: Series und Data 4:42
- JavaFX [28] - Diagramme: Achsen und BarChart 3:32
- JavaFX [29] - Diagramme: Series und Data im Code 5:01
- JavaFX [30] - Diagramme: ScatterChart 1:07
- JavaFX [31] - Diagramme: LineChart 0:55
- Lesen Sie zu LineChart: https://docs.oracle.com/javase/8/javafx/user-interface-tutorial/line-chart.htm
- optional: JavaFX [32] - Diagramme - AreaChart 0:59
- optional: JavaFX [33] - Diagramme - BubbleChart 2:26
- optional: JavaFX [34] - Diagramme - StackedAreaChart 3:45
- optional: JavaFX [35] - Diagramme - StackedBarChart 1:21
- JavaFX [57] - Tabellen: Einführung 4:47
- JavaFX [58] - TableView und TableColumn 9:32
- Lesen Sie zu TableView: https://docs.oracle.com/javase/8/javafx/user-interface-tutorial/table-view.htm
Fortführung PÜ-32 Projekt TemperatureData-GUI
- JavaFX 04.8 - Projekt Temperature-Data-GUI: TableView in FXML mit fx:id und Attribute mit @FXML in Controller-Klasse 10:21
- JavaFX 04.9 - Projekt Temperature-Data-GUI: Daten setzen in TableView und TableColumn in Controller-Klasse 12:18
- JavaFX 04.10 - Projekt Temperature-Data-GUI: LineChart in FXML und Controller-Klasse implementieren 11:51
- JavaFX 04.11 - Projekt Temperature-Data-GUI: Zusammenfassung 0:28
Weitere JavaFX-Komponenten
- JavaFX-Beispielanwendung Ensemble mit Demo-Code zu vielen GUI-Elementen (siehe Kapitel 17 oben)
- externe Libs z.B. von Gerrit Grunwald:
- JavaFX 05 - Projekt Medusa (Gauges/Clocks) von GitHub in Eclipse und ins eigene Projekt einbinden 8:03
- https://harmoniccode.blogspot.com/ insbesondere die Projekte: Medusa (Anzeige von Messdaten), Enzo, TilesFX, siehe https://github.com/HanSolo
![]() |
Overview aus dem Projekt https://github.com/HanSolo/Medusa |
![]() |
Overview aus dem Projekt https://github.com/HanSolo/tilesfx |
optional: Weiterführende Themen
optional: CSS
- optional: JavaFX [59] - Anwendung Stylen
- optional: JavaFX [60] - CSS - CSS Einbinden 5:39
- optional: JavaFX [61] - CSS - Einstieg in CSS
- optional: JavaFX [62] - CSS - Mauszeiger ändern 6:46
- optional: JavaFX [63] - CSS - Opacity, Rotation, Skalierung und Position
- optional: JavaFX [64] - CSS - disabled, focused, hover und pressed 4:52
- optional: JavaFX [73] - Forschung: Lange Operationen 3:51
- optional: JavaFX [74] - Task und Service 6:01
- optional: JavaFX [75] - Service: Rückgabewerte und Beispiel 6:21
- optional: JavaFX [76] - ScheduledService (Deutsch) 4:11
- optional: JavaFX [77] - Callbacks (Deutsch) 17:46
- optional: JavaFX [78] - Shapes: Rectangle (Deutsch) 4:14
- optional: JavaFX [79] - Shapes: Circle (Deutsch) 3:17
- optional: JavaFX [80] - Shapes: Ellipse (Deutsch) 2:34
- optional: JavaFX [81] - Shapes: union, intersect, subtract (Deutsch) 4:39
- optional: JavaFX [82] - Effekte: Einführung 4:33
- optional: JavaFX [83] Effekte - ColorInput und Effektarten 5:08
- optional: JavaFX [84] Effekte - ImageInput 4:22
- optional: JavaFX [85] Effekte - Effekte verknüpfen 3:43
- optional: JavaFX [86] - Effekte - Schatten 6:30
- optional: JavaFX [87] - Effekte - Licht 14:56
- optional: JavaFX [88] - Effekte - Blur 7:55
- optional: JavaFX [89] - Effekte - PerspectiveTransform 4:55
- optional: JavaFX [90] - Events - onMouseMoved / MouseEvent (Deutsch) 8:08
- optional: JavaFX [91] - Events - onMouseClicked, onMouseReleased, onMousePressed (Deutsch) 6:24
- optional: JavaFX [92] - Events - onScroll / ScrollEvent (Deutsch) 4:27
- optional: JavaFX [93] - Events - onZoom / ZoomEvent (Deutsch) 4:22
- optional: JavaFX [94] - Events - onRotate / RotateEvent (Deutsch) 4:25
- optional: JavaFX [95] - Events - onKeyPressed, onKeyReleased, onKeyTyped / KeyEvent (Deutsch) 6:55
- optional: JavaFX [96] - Events - onDragDetected - Drag and Drop 1 (Deutsch) 7:11
- optional: JavaFX [97] - Events - onDragOver, onDragDropped - Drag and Drop 2 (Deutsch) 5:45
- optional: JavaFX [98] - Clipboard - Zwischenablage 3:36
- optional: JavaFX [99] - ToolBar (Deutsch) 6:34
- optional: JavaFX [100] - MenuBar (Deutsch) 4:41
- optional: JavaFX [101] - Menu und MenuItem 9:22
- optional: JavaFX [102] - ContextMenu und MenuButton 5:01
- optional: JavaFX [103] - CheckMenuItem, RadioMenuItem und SeparatorMenuItem 5:59
- optional: JavaFX [104] - Tab und TabPane 6:21
- optional: JavaFX [105] - Pagination (Deutsch) 6:10
- optional: JavaFX [106] - ListView (Deutsch) 3:03
- optional: JavaFX [107] - SelectionModel (Deutsch) 6:22
- optional: JavaFX [108] - MultipleSelectionModel (Deutsch) 5:57
- optional: JavaFX [109] - SingleSelectionModel (Deutsch) 3:21
- optional: JavaFX [110] - Bibliothek - JSearchFX 10:47
- optional: JavaFX [111] - Dialoge - Alert und TextInputDialog 7:09
- optional: JavaFX [112] - Dialoge - ButtonData, ButtonType und selbst erstellte Inhalte 7:31
- optional: JavaFX [113] - Dialoge - Ausklappbarer Inhalt und Praxisbeispiel 6:34
- optional: JavaFX [114] - WebView und WebEngine 5:59
- optional: JavaFX [115] - MediaView und MediaPlayer 10:51
- optional: JavaFX [116] - Image und ImageView 6:03
- optional: Gluon - JavaFX für Android und iOS [1] - Plugin und Desktop Setup ( Deutsch / German ) 12:11
- optional: Gluon [2] - Android Setup und .apk exportieren 8:58
- optional: Gluon [3] - .apk installieren 4:14
- optional: Gluon [4] - Plattform spezifische Aktionen 14:19
- optional: Javafx BONUS - Metadaten von Medien 5:37
- optional: JavaFX BONUS - CSS - setUserAgentStylesheet, Modena und Caspian 3:18
- optional: JavaFX BONUS - CSS - Anwendungsfarbe mit -fx-base
- optional: JavaFX BONUS - SubScene basics
- optional: JavaFX BONUS - 3D - Box, Sphere, Point3D, Rotation und Translation 14:45
- optional: JavaFX BONUS - 3D - Skalierung 3:24
- optional: JavaFX BONUS - 3D - PhongMaterial, Diffuses und Spekulares Licht
- optional: JavaFX BONUS - 3D - AmbientLight, PointLight und Licht Grundlagen 11:51
- optional: JavaFX BONUS - 3D - SpecularMap, DiffuseMap und BumpMap 9:23
- optional: JavaFX BONUS - 3D - Die Kamera mit PerspectiveCamera 7:34
- optional: JavaFX BONUS - 3D - PickResult German 3:58
- optional: JavaFX BONUS - Animieren - AnimationTimer 4:24
- optional: JavaFX BONUS - Animieren -Timeline, KeyFrame, KeyValue 7:02
- optional: JavaFX BONUS - Animieren - Transition, RotateTransition, ScaleTransition, FadeTransition 15:41
- optional: JavaFX BONUS - Bilder und Rechtecke mit runden Ecken
- optional: JavaFX BONUS - Node.snapshot, ImageIO, SwingFXUtils (Deutsch) 5:53
No comments:
Post a Comment