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

Stand: 2018-04-15

Themen und Termine

Bitte die Videos unter „Grundlagen“ zum jeweiligen Termin ansehen.

Unten sind die Videos auf YouTube verlinkt. Alternativ stehen die Videos auf http://www.j3L7h2.de/videos/p.html zum Ansehen und zum Download bereit.

Die Videos mit „A“ bis „F“ sind Programmierbeispiele aus vergangenen Jahren.

vor dem 19. April 2018


Ü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 26. April 2018


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 3. Mai 2018


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 17. Mai 2018


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 24. Mai 2018


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 7. Juni 2018


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 14. Juni 2018


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 Dieses Video über Collections in C# werden C-Programmierer hassen!, Teil 1 48:37
05C.2 Dieses Video über Collections in C# werden C-Programmierer hassen!, 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 21. Juni 2018


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 28. Juni 2018


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 5. Juli 2018


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 12. Juli 2018


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