Modulinformationssystem Informatik

 

Nebenläufige und verteilte Programmierung URL PDF XML

Modulcode: Inf-NVP
Englische Bezeichnung: Concurrent and distributed Programming
Modulverantwortliche(r): Priv.-Doz. Dr. Frank Huch
Turnus: unregelmäßig (WS17/18 WS23/24)
Präsenzzeiten: 2V 2Ü
ECTS: 6
Workload: 30 Std. Vorlesung, 30 Std. Präsenzübung, 120 Std. Selbststudium
Dauer: ein Semester
Modulkategorien: BSc-Inf-WP (BSc Inf (21)) BSc-WInf-WP-Inf (BSc WInf (21)) WI (BSc Inf (15)) MSc-Inf-WP (MSc Inf (21)) 2F-MEd-Inf-WP (MEd-Hdl Inf (21)) 2F-MA-Inf-WP (2F-MA Inf (21)) MSc-WInf-WP-Inf (MSc WInf (21)) PI (MSc Inf (15)) WI (MSc Inf (15)) MEd-Hdl WP (MEd-Hdl Inf) 2F-MA Inf WP (2F-MA Inf) WI (MSc WInf (15)) WI (MEd Inf) IG (TA) (MSc Inf (2-Fach))
Lehrsprache: Englisch
Voraussetzungen: Info Inf-ProgOO Inf-FortProgP

Kurzfassung:

Dieses Modul gibt einen vertiefenden Einblick in Probleme, Techniken und Konzepte der nebenläufigen und verteilten Programmierung. Unterschiedliche Ansätze werden vorgestellt und mit einander verglichen. Ein weiterer Schwerpunkt wird auf verteilte Algorithmen und robuste verteilte Systeme gelegt.

Lernziele:

Die Studierenden sind in der Lage Techniken der verteilten Programmierung in praktischen Anwendungen einzusetzten. Sie erkennen Gefahren, welche sich durch nebenläufigkeiten in verteilten Systemen ergeben und können diese mit Hilfe der erlernten Ansätze lösen. Die Studierenden sind weiterhin in der Lage verteilte Systeme (insbesondere auch Web-Applikationen) mit modernen Programmierkonzepten zu realisieren. Sie sind in der Lage mögliche Probleme in nebenläufigen und verteilten Anwendungsszenarien zu erkennen und adäquate Lösungen zu finden.

Lehrinhalte:

Dieses Modul gibt einen vertiefenden Einblick in Probleme, Techniken und Konzepte der nebenläufigen und verteilten Programmierung. Im Vordergrund stehen dabei Techniken und Ansätze verteilte Internet-basierte Systeme zu entwickeln. Die Vorstufe dazu sind Techniken und Ansätze zur nebenläufigen Programmierung, die auch in diesem Modul behandelt werden. Vorgestellt werden Ansätze aus verschiedenen Programmiersprachen, wie z.B. Java, Erlang, Haskell. Ein wesentlicher Schwerpunkt wird auf die transaktionsbasierte Konzepte gelegt.

Weitere Voraussetzungen:

Grundlegende Programmierkenntnisse, insbesondere in der objektorientierten Programmierung mit Java und der funktionalen Programmierung in Haskell.

Prüfungsleistung:

Mündliche Prüfung über den Stoff der Vorlesung und der Übung am Ende des Moduls.

Lehr- und Lernmethoden:

Vorlesung mit vertiefender Übung. Als Übungsaufgaben sind insbesondere Programmieraufgaben zu lösen, welche die in der Vorlesung vorgestellten Konzepte im praktischen Kontext der nebenläufigen und verteilten Programmierung vertiefen.

Verwendbarkeit:

Literatur:

Verweise:

Kommentar:

Dieses Modul stellt eine gekürzte Variante des Moduls MS0306 dar. Deshalb ist es nicht möglich, beide Module als Wahlpflichtmodule einzubringen.