Home | Lehre | Videos | Texte | Vorträge | Software | Person | Impressum, Datenschutzerklärung | Blog RSS

Stand: 2019-04-09

Themen und Termine

Bitte die Videos unter „Grundlagen“ vor dem jeweils angegebenen Termin ansehen. Die Videos mit „A“ bis „F“ vor dem Namen sind Aufgaben und Erklärungen aus vergangenen Jahren. Der Quellcode zu den neueren Videos ist nicht unten verlinkt, sondern steht auf GitHub.

vor dem 11. April 2019

Überblick
Skript
Material, mehr Material

Grundlagen:
01.01 Objektorientierung 24:29
01.02.2 Sprachsynthese, Spracherkennung, Schrifterkennung mit C# 18:15
01.02.1 C# und .NET 7:32
01.03_4 C# Typen, Operationen, Arrays, Klassen, Objekte, public, private 25:03
01.05_06 Datenstrukturen, WPF 16:17
01.07_08 Datenströme, Exceptions 15:19
01.09_10 Multithreading, Netzwerk 14:20
01.11_12 Design Patterns, .NET intern 8:43

Ergänzungen:
S01 C#, WPF, erstes Programm 41:40
01A erste Schritte mit C#, WPF, .NET. Animation eines springenden Balls 68:57 Material
01B.1 Knöpfe, Radiobuttons, Textfelder mit ein wenig Programmlogik 58:21 Material
01B.2 Button, der wegspringt; Zufallszahlen; Schriftarten 43:21 Material
01C.1 erste Schritte mit WPF und C#; Tage seit eingegebenem Datum 48:39 01C.1_Material.zip
01D.1 einfacher Taschenrechner mit C# und WPF 39:22 01D.1_Material.zip
01E.1 Einstieg in grafische Bedienoberflächen mit WPF 1:10:09 01E.1_Material.zip
01F.1 simpler Taschenrechner mit WPF in C# 1:08:37 Taschenrechner

vor dem 18. April 2019

Grundlegende Typen
Skript
Material, mehr Material

Grundlagen:
02.01 int, uint, Parse usw. 17:01
02.02 Zeichenketten, Strings 9:56
02.3.1 Arrays 12:07
02.3.2 mehrdimensionale Arrays, rechteckig, jagged 11:55
02.4 Aufzählungen, enum 13:43

Ergänzungen:
02A.1 mehrdimensionale Arrays in C#, jagged, rechteckig 14:30
02A.2 Koch-Kurve in C#, Math-Funktionen, Arrays 40:40 Material
02B.1 Arrays; Kleckse nach Abstandsangaben anordnen; Teil 1 50:30
02B.2 Kleckse nach Abstandsangaben anordnen; Teil 2 32:12 Material
02C.1 eigener Taschenrechner mit WPF 47:58 02C.1_Material.zip
02D.1 Labyrinth erzeugen; rechteckige Arrays; Teil 1 44:12 02D.1_Material.zip
02D.2 Labyrinth erzeugen; Zufall, Arrays, Logik; Teil 2 58:03 02D.2_Material.zip
02E.1 Schachbrett mit 1, 2, 4, 8 usw. füllen; Arrays, Datentypen; WPF-Elemente per Programm 34:28 02E.1_Material.zip
02E.2 Schiebepuzzle in C# mit WPF; Array; Logik 31:57 02E.2_Material.zip
02F.1 Game of Life mit WPF in C# 1:24:46 GameOfLife

vor dem 25. April 2019

Klassen, Attribute, Methoden
Skript
Material, noch mehr Material

Grundlagen:
03.1 Klassen, Attribute, Methoden 14:37
03.2 Überladen von Funktionen bzw. Methoden 7:43
03.3 Initialisierung, Konstruktor, Standardkonstruktor 18:53
03.4 Getter, Setter, Properties 17:34
03.4a Wiederholung Klassen, Attribute, Methoden, Properties 4:53

Ergänzungen:
03A.1 Worthäufigkeiten mit C#, Klassen, Objekte, private, public 73:32 Material
03B.1 eigene Klasse; Vokabeltrainer programmieren; Teil 1 48:02
03B.2 Vokabeltrainer programmieren; Teil 2 34:50 Material
03C.1 persönliches Zeitprotokoll in C#, Teil 1 56:24
03C.2 persönliches Zeitprotokoll in C#, Teil 2 54:08 03C.1_2_Material.zip
03C.3 Intelligenz für Kühlschrank in C#, Teil 1 47:07
03C.4 Intelligenz für Kühlschrank in C#, Teil 2 43:51 03C.3_4_Material.zip
03C.5 Textgenerator mit N-Grammen in C#, Teil 1 43:09
03C.6 Textgenerator mit N-Grammen in C#, Teil 2 38:25 03C.5_6_Material.zip

vor dem 2. Mai 2019

Grundlagen:
03.5.1 struct, Werttyp, Referenztyp, Teil 1 25:44
03.5.2 struct, Werttyp, Referenztyp, Teil 2 20:03
03.6 statische Attribute, Methoden, Properties 19:36
03.6a Wiederholung Klassen, Attribute, Methoden 20:12

Ergänzungen:
03C.7 Traveling-Salesman-Problem evolutionär lösen, Teil 1 47:21
03C.8 Traveling-Salesman-Problem evolutionär lösen, Teil 2 38:53 03C.7_8_Material.zip
03A.2 Wecker Teil 1, C#, Klasse, Konstruktor, new, Attribut, Methode, ToString 47:06 Material
03D.1 Lastgang simulieren; Objekte in C#; Teil 1 47:57 03D.1_Material.zip
03D.2 Lastgang simulieren; Objekte in C#; Teil 2 38:56 03D.2_Material.zip
03D.3 Lastgang simulieren; Getter, Setter, Properties in C#; Teil 3 43:48 03D.3_Material.zip
03D.4 Lastgang simulieren; Aufrunden, Vererbung; Teil 4 41:49 03D.4_Material.zip
03D.5 struct und class in C#; Werttyp, Referenztyp 16:25 03D.5_05D.2_Material.zip
03E.1 Landkarte der Bahnhaltestellen erzeugen; Klassen, Properties, Zeichenfunktionen in C# 1:18:18 03E.1_Material.zip
03E.2 Länge der Luftlinie; struct und static in C# 1:26:00 03E.2_Material.zip
03F.1 Klassen in C# 1:08:45 ClassInterfaceStruct
03F.2 Landkarte aus Entfernungstabelle in C# 1:09:53 LandkarteAusEntfernungstabelle

vor dem 9. Mai 2019

Vererbung, Polymorphie
Skript
Material, noch mehr Material

Grundlagen:
04.1.1 Datenkapselung, Vererbung, protected 25:12
04.1.2 Klassendiagramm in Visual Studio und in UML 12:12
04.2 Konstrukturen für abgeleitete Klassen, base 8:36
04.3.1 Polymorphie, virtuelle Methoden, Teil 1 14:45
04.3.2 virtuelle Methoden und Properties, Teil 2 7:27

Ergänzungen:
04A.1 Wecker Teil 2, C#, Ableitung, Vererbung, Konstruktor, Polymorphie 50:21 Material
04B.1 Stausimulation; Klassen, Properties, static; Teil 1 52:23
04B.2 Stausimulation; Properties; Minimum und Maximum; Teil 2 50:21 Material
04C.1 Fuhrpark in C#, Polymorphie, Teil 1 44:40
04C.2 Fuhrpark in C#, Polymorphie, Teil 2 47:52 04C.1_2_Material.zip
04C.3 Diagramm aus Textdatei in C#, Polymorphie, Teil 1 44:11
04C.4 Diagramm aus Textdatei in C#, Polymorphie, Teil 2 38:27 04C.3_4_Material.zip

vor dem 16. Mai 2019

Grundlagen:
04.4.1 Polymorphie angewendet, Teil 1 18:30
04.4.2 Polymorphie angewendet, Upcast, Downcast, Teil 2 20:02
04.5 Zusammenfassung Klassen, Methoden, Vererbung 20:13

Ergänzungen:
04A.2 Wecker Teil 3, C#, Ableitung, Vererbung, Konstruktor, Polymorphie 43:47 Material
04D.1 Zeiterfassung; Vererbung in C#; Teil 1 38:01 04D.1_Material.zip
04D.2 Zeiterfassung; Polymorphie in C#; Teil 2 43:39 04D.2_Material.zip
04D.3 Zeiterfassung, grafische Oberfläche in WPF; Teil 3 37:04 04D.3_Material.zip
04D.4 Zeiterfasssung, virtuelle Methoden, Exceptions; Teil 4 33:50 04D.4_Material.zip
04D.5 Vererbung und Konstruktoren in C#; Zoo 42:27 04D.5_Material.zip
04F.1 Audiosignale mit Klassen und Vererbung in C# 1:01:57 SignalverarbeitungMitKlassen
04F.2 Ertrag von Windenergieanlagen als Beispiel für Polymorphie in C# 1:19:49 Windenergieanlagen

vor dem 23. Mai 2019

Abstrakte Klassen, Collections, generische Klassen
Skript
Material

Grundlagen:
05.1 abstrakte Klassen, rein virtuelle Methoden 12:53
05.2 Interfaces, Mehrfachvererbung 13:10
05.3.1 Collections, List, Queue, Dictionary 20:05
05.3.2 Collections, Lambda-Ausdrücke, anonyme Funktionen 15:29

Ergänzungen:
05A.1 Wiederholung Schlüsselwörter von C#, public, struct, virtual; Getter, Property; Downcast 48:53
05A.2 Collections richtig anwenden, Array, List, Queue, Stack, Dictionary 18:01
05A.3 Lambda-Ausdrücke zum Summieren, Sortieren usw. 13:22
05B.1 Schachfiguren; Vererbung, Polymorphie; Teil 1 36:19
05B.2 Schachfiguren; Vererbung, Polymorphie; Teil 2 42:06 Material
05B.3 Schachfiguren; Bewegung per Maus; Ereignisse; Teil 3 48:12
05B.4 Schachfiguren; Hover; weitere Klasse; Refactoring; Teil 4 44:24 Material
P1B Snake programmieren, ein antikes Videospiel 14:48
05B.5 Simulation Amöben und Bakterien; Vererbung, Polymorphie; Teil 1 38:31
05B.6 Simulation Amöben und Bakterien; Collections, List; Teil 2 36:24 Material
05B.7 Simulation Amöben und Bakterien; Vererbung, Polymorphie; Teil 3 43:17
05B.8 Schlüsselwörter von C#; Simulation Amöben und Bakterien; Teil 4 52:43 Material
P2B Lastgang simulieren; Polymorphie 7:33
P3B Schnittpunkte von Freihandlinien markieren 23:14
05C.1 Einteilung Teilnehmer auf Gruppen in C#; Klassen, Collections; Teil 1 48:37
05C.2 Einteilung Teilnehmer auf Gruppen in C#; Klassen, Collections; Teil 2 43:42 05C.1_2_Material.zip
05D.1 Zeiterfassung, Collections, Datei schreiben; Teil 5 41:38 05D.1_Material.zip
05D.2 Gebastel mit Listen, Stacks und Queues 27:05
05E.1 Raumschiffspiel in C# mit WPF programmieren, Teil 1 1:06:29 05E.1_Material.zip
05E.2 Raumschiffspiel in C# mit WPF programmieren, Teil 2 44:45 05E.2_Material.zip
05E.3 Raumschiffspiel in C# mit WPF programmieren, Teil 3 58:14 05E.3_Material.zip
05F.1 class, abstract class, interface, struct in der Sprache C# 7.0 30:07 Collections
05F.2 Arbeit mit generischen Collections in C# 35:58 ExperimenteMitKlassen

vor dem 6. Juni 2019

Exceptions
Skript
Material

Grundlagen:
06.1 Exceptions, Ausnahmebehandlung 19:12
06.2 Exceptions, throw, catch, finally 30:11

Ergänzungen:
06A.1 Exceptions, try, catch, Datei einlesen, Zeichenkette nach Zahl 21:57
06B.1 Beispiel für Exceptions; try, catch, finally, throw 44:28 Material
06E.1 Bahnfahrplan mit C# und WPF aus dem Netz holen 1:13:51 06E.1_Material.zip

vor dem 13. Juni 2019

Dateien, Datenströme
Skript
Material

Grundlagen:
07.0 Dateien, drei Ansätze 8:12
07.1.1 Dateien, Verzeichnisse 12:41
07.1.2 Rekursion über Verzeichnisse 15:35
07.2.1 Datenströme, Streams, Teil 1 12:13
07.2.2 Streams, FileStream, BinaryWriter, Teil 2 22:24
07.2.3 Streams, StreamReader, Teil 3 7:36
07.3 Objektserialisierung 14:22

Ergänzungen:
07A.1 Große Dateien per Stream verarbeiten; Split, Parse, InvariantCulture, Exceptions 33:17
07A.2 Zip-Dateien per Stream verarbeiten 14:37
07A.3 (Teil 1) Datenströme gleichzeitig schreiben und lesen 12:06 Material
07A.4 (Teil 2) Datenströme gleichzeitig schreiben und lesen 21:18 Material
07B.1 Datei mit Stream verarbeiten; Exceptions fangen 45:52 Material
07B.2 Text in großer Datei suchen; Streams; Teil 1 35:22
07B.3 Text in großer Datei suchen; Streams; Teil 2 44:40 Material
07C.1 Notizzettel auf dem Bildschirm in C#; Fenster erzeugen; Teil 1 39:27
07C.2 Notizzettel auf dem Bildschirm in C#; Speichern als XML-Datei; Teil 2 42:38 07C.1_2_Material.zip
07C.3 perfekte Verschlüsselung, One-Time Pad selbst programmiert 52:25 07C.3_Material.zip
07D.1 Suchen in langer Datei; Streams in .NET; Teil 1 47:13 07D.1_Material.zip
07D.2 Suchen in langer Datei; Streams in .NET; Teil 2 38:02 07D.2_Material.zip
07D.3 Suchen in langer Datei; Streams in .NET; Teil 3 45:38 07D.3_1_Material.zip 07D.3_2_Material.zip
07F.1 Dateien und Streams in .NET, Teil 1: File und Stream 41:13 DateienStreamsExceptions
07F.2 Dateien und Streams in .NET, Teil 2: BinaryWriter und StreamWriter 15:54
07F.3 Dateien und Streams in .NET, Teil 3: Exceptions und using 28:13

vor dem 27. Juni 2019

Design Patterns, Events
Skript
Material

Grundlagen:
08.1_2 Design Patterns, Singleton-Pattern 10:01
08.3 Composite-Pattern 15:49
08.4 State-Pattern 22:29
08.5 (in German) Model-View-Controller 6:21
08.6 Observer-Pattern, Publish and Subscribe, Events 27:25

Ergänzungen:
08A.1 Das Visitor-Pattern am Beispiel 34:29 Material
08B.1 Speicherplatznutzung darstellen; Composite Pattern; Polymorphie 74:37 Material
08C.1 Differentialgleichungslöser, Strategy Pattern, Teil 1 33:10
08C.2 Differentialgleichungslöser, Strategy-Pattern, Teil 2 26:58 08C.1_2_Material.zip
08C.3 Differentialgleichungslöser, Mittelpunktsverfahren, Teil 3 35:11 08C.3_Material.zip
08D.1 Bildschirmformular für Wärmedämmung programmieren; Teil 1 39:55 08D.1_Material.zip
08D.2 Bildschirmformular für Wärmedämmung programmieren; Teil 2 31:58 08D.2_Material.zip
08E.1 Dateien überwachen in C#; Observer-Pattern 1:03:01 08E.1_Material.zip

vor dem 4. Juli 2019

Multithreading
Skript
Material

Grundlagen:
09.1 Multithreading, Multicore, Threads 15:00
09.2 Threads, volatile 40:23
09.3 Parallele for-Schleife 13:48
09.4 Synchronisation von Threads, lock 19:07

Ergänzungen:
09A.1 Arbeit im Hintergrund, Threads, volatile, lock, UI Thread am Beispiel 62:18 Material
09D.1 mit Thread im Hintergrund Primzahlverteilung berechnen 53:59 09D.1_Material.zip
09D.2 Bildeffekt im Hintergrundthread 55:42 09D.2_Material.zip
09F.1 Webcrawler in C# mit Regular Expressions und Threads 1:16:07 WebCrawler

Klausurvorbereitung

K01A Methodenaufrufe, Referenztyp; Klausur 2012-03-14, Aufgabe 2 9:55
K02A statische Attribute, Standardkonstruktor; Klausur 2012-03-14, Aufgabe 8 9:40
K03A Fehler in C#-Quellcode finden; Klausur 2012-03-14, Aufgabe 1 23:56
K04A UML-Klassendiagramm aus C#-Quellcode; Klausur 2012-03-14, Aufgabe 7 5:39
K05A Stack, Push, Pop; Klausur 2011-07-07, Aufgabe 2 5:07
K06A Fehler in C#-Quellcode finden; Bewertungsschema; Klausur 2011-07-07, Aufgabe 1 29:02
K07A UML-Klassendiagramm; Klausur 2011-07-07, Aufgabe 6 8:01
K08A System.IO.ReadAllLines; Klausur 2011-09-29, Aufgabe 3 1:06
K09A UML-Diagramm versus C#-Code; Klausur 2011-06-13, Aufgabe 6 3:54
10E.1 Operatoren und Schlüsselwörter von C# 1:11:31 10E.1_Material.zip