Inhalt
Im Seminar werden weiterführende Programmiertechniken (u.a. Rekursion, Dynamische Programmierung, Design Patterns), effiziente Algorithmen für Standard-Probleme der Informatik (u.a. Suchen und Sortieren), Grundlagen der Textverarbeitung (Satzerkennung, Tokenisierung etc.) und die programmatische Integration aktueller, problemspezifischer Werkzeuge in eigene Anwendungen forciert und im begleitenden Programmierpraktikum (Tutorium) vertieft.
Studienleistung
Die Studienleistung besteht in der Bearbeitung der wöchentlichen Übungen. Diese werden auf GitHub bereitgestellt und auch abgegeben. Bitte legen Sie daher einen GitHub-Account an und tragen diesen in Ilias in diese Tabelle ein. Beachten Sie: Unsere Übungen und auch Ihre Abgaben sind dort öffentlich einsehbar. Es ist nicht nötig, dass Sie ihren echten Namen verwenden.
Ressourcen und Plattformen
Im Kurs verwenden kommen fünf Dienste/Webseiten zum Einsatz:
- Diese Seite hier ist zentraler Knotenpunkt. Hier finden Sie die zentralen Informationen zum Kurs.
- Über Ilias teilen Sie mir Ihren GitHub-Account mit, und geben Übung 1 ab. Später werden Sie über Ilias auch Informationen zur Modulprüfung bekommen und sie dort abgeben.
- Für die Teilnahme an der Modulprüfung ist eine separate Anmeldung über Klips nötig. Ich werde im Kurs rechtzeitig darauf aufmerksam machen.
- Alle restlichen Übungen geben Sie über GitHub ab.
- Aufzeichnungen der Sitzungen finden Sie auf YouTube in einer Playliste.
- Anmeldungen zur Modulprüfung machen Sie in Klips.
Termine
10.04.: Einführung, Recap, Organisatorisches (Slides, Video, Übung, Code-Beispiele)
17.04.: Versionskontrolle mit git und GitHub (Slides, Video, Übung)
24.04.: Merging mit Git (Slides, Video, Übung)
01.05.: Keine Sitzung: Tag der Arbeit
08.04.: Iterable und Iterator (Slides, Video, Übung)
15.05.: Generics and Lists (Slides, Video, Übung)
22.05.: Keine Sitzung: Pfingstferien
29.05.: Java Collections Framework: Queues und Sets (Slides, Video, Übung)
05.06.: Java Collections Framework: Maps (Slides, Video, Übung)
12.06.: Rekursion (Slides, Video, Übung)
19.06.: entfällt: Projektbegehung
26.06.: Abhängigkeitsmanagement mit Apache Maven (Slides, Video, Übung)
03.07.: Unit-Testing mit junit (Slides, Video, Übung)
10.07.: Allgemeine Fragerunde für alle offenen Probleme / ggf. Sortieralgorithmen und Effizienz (Slides, Video)
17.07.: Einführung in die Modulprüfung (Video)