Nebenläufige Programmierung

NUMMER: 211012
KÜRZEL: NLP
MODULBEAUFTRAGTE:R: Dr.-Ing. Doga Arinir
DOZENT:IN: Dr.-Ing. Doga Arinir
FAKULTÄT: Fakultät für Informatik
SPRACHE: Deutsch
SWS: 3 SWS
CREDITS: 5 CP
ANGEBOTEN IM: jedes Sommersemester

PRÜFUNGEN

FORM: schriftlich
TERMIN: Siehe Prüfungsamt.

LERNFORM

Hörsaalvorlesung mit Medienunterstützung, eLearning, Übungen am Rechner, zusätzlich Selbststudium mit ergänzend bereitgestellten Materialien und Aufgaben

LERNZIELE

Nach dem erfolgreichen Abschluss des Moduls

- haben die Studierenden grundlegende Fähigkeiten und Techniken erworben, um nebenläufige Programme sicher entwickeln zu können
- kennen die Studierenden softwaretechnische Entwurfsmuster, welche bekannte Probleme bei nebenläufigen Programmen, wie zum Beispiel die Verklemmung, ver-meiden lassen
- können die Studierenden die Performanz von Programmen durch den Einsatz der nebenläufigen Programmierung verbessern
- sind die Studierenden in der Lage, bestehende Programme zu analysieren und mögliche Fehler zu erkennen
- können die Studierenden die Sprachmerkmale und Schnittstellen von JAVA für die nebenläufige Programmierung sicher anwenden

INHALT

Moderne Hardware-Architekturen lassen sich nur durch den Einsatz nebenläufiger Programme richtig ausnutzen. Die nebenläufige Programmierung garantiert bei richtiger Anwendung eine optimale Auslastung der Hardware. Jedoch sind mit einem sorglosen Ein-satz dieser Technik auch viele Risiken verbunden. Die Veranstaltung stellt Vorteile und auch Probleme nebenläufiger Programme dar und zeigt, wie sich die Performanz von Programmen verbessern lässt.

1. Nebenläufigkeit: Schnelleinstieg
- Anwendungen vs. Prozesse
- Programme und ihre Ausführung
- Vorteile und Probleme von nebenläufigen Programmen (Verbesserung der Performanz, Synchronisation, Realisierung kritischer Abschnitte, Monitore, Lebendigkeit, Verklemmungen)
2. Threads in Java
3. UML-Modellierung von Nebenläufigkeit
4. Neues zur Nebenläufigkeit in Java 5 und Java 6
5. Realisierung von Nebenläufigkeit
6. Fortschritte Java-Konzepte für Nebenläufigkeit

VORAUSSETZUNGEN CREDITS

Bestandene Modulabschlussprüfung

EMPFOHLENE VORKENNTNISSE

Inhalte der Module Informatik 1, Informatik 2, Software-Engineering und Web-Engineering

LITERATUR

D. Arinir, P. Ziesche: „Java: Nebenläufige und verteilte Programmierung“, 2. Auflage, W3l, 2010 http://www.w3l.de/w3l/jsp/shop/produktdetails.jsp?produktoid=317&navID=null

SONSTIGE INFORMATIONEN

Aktuelle Informationen wie Vorlesungstermine, Räume oder aktuelle Dozent*innen und Übungsleiter*innen sind im Vorlesungsverzeichnis der Ruhr-Universität https://vvz.rub.de/ und im eCampus https://www.rub.de/ecampus/ecampus-webclient/ zu finden.