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, später Übung) vertieft.

Während des Semesters sind die TeilnehmerInnen der Übungen, verpflichtet, jeweils acht bis zehn kleinere Aufgabenlösungen zwischen den Veranstaltungen schriftlich zu bearbeiten. Diese Veranstaltungen dienen vor allem der zeitnahen Anwendung der erworbenen Kenntnisse in Teamarbeit. Nach Abschluss der Proseminare ist während der vorlesungsfreien Zeit eine Hausarbeit anzufertigen, die eine dem Ausbildungsstand entsprechende Aufgabenstellung in ein lauffähiges und angemessen dokumentiertes Anwendungsprogramm umsetzt und so die vom Modul geforderte eigenständige Programmierfähigkeit demonstriert. Dabei ist vorgesehen, dass die zweite Hausarbeit auf den Softwarelösungen der ersten aufbaut.

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 teilen Sie diesen per E-Mail mit.

Ablauf und Themen

Materialien (Folien, Code, Audioaufzeichnung) werden im Anschluss hier verlinkt.

YouTube-Playliste mit allen Aufzeichnungen

Modulprüfung

Die Modulprüfung besteht in der Bearbeitung eines größeren Softwareprojektes. Sie bekommen dazu eine Vorlage, die Sie nach der Spezifikation an bestimmten Stellen ergänzen und erweitern müssen. Die Modulprüfung kann in Gruppen von maximal 3 Personen angefertigt werden. Diese sollten Sie klar und eindeutig benennen, und im Code muss deutlich werden, wer welchen Teil bearbeitet hat.

Die Abgabe erfolgt bis zum 15.09., entweder indem Sie eine zip-Datei in Ilias hochladen oder einen Link zu einem git-Repository schicken.