course: Concurrent Programming

number:
310509
teaching methods:
lecture with tutorials
media:
e-learning, computer based presentation
responsible person:
Dr.-Ing. Doga Arinir
lecturer:
Dr.-Ing. Doga Arinir (Neuroinformatik)
language:
german
HWS:
3
CP:
4
offered in:
summer term

dates in summer term

  • start: siehe "Sonstiges"
  • lecture with integrated tutorials Mondays: from 17:45 to 19.20 o'clock

Exam

Die Angaben zu den Prüfungsmodalitäten (im WiSe 2020/2021 | SoSe 2021) erfolgen vorbehaltlich der aktuellen Situation. Notwendige Änderungen aufgrund universitärer Vorgaben werden zeitnah bekanntgegeben.

Termin wird vom Dozenten bekannt gegeben

Form of exam:written
Registration for exam:FlexNow
Duration:90min

goals

Die Studierenden haben grundlegende Fähigkeiten und Techniken, um nebenläufige Programme sicher entwickeln zu können. Es kennen softwaretechnische Entwurfsmuster, welche bekannte Probleme bei nebenläufigen Programmen wie zum Beispiel die Verklemmung vermeiden lassen. Die Teilnehmer können

  • die Performanz von Programmen durch den Einsatz der nebenläufigen Programmierung verbessern,
  • bestehende Programme analysieren und mögliche Fehler erkennen und
  • die Sprachmerkmale und Schnittstellen von JAVA für die nebenläufige Programmierung sicher anwenden.

content

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 Einsatz dieser Technik auch viele Risiken verbunden. Die Veranstaltung stellt Vorteile und Probleme nebenläufiger Programme dar und zeigt, wie sich die Performanz von Programmen verbessern lässt:

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

requirements

keine

recommended knowledge

Inhalte der Vorlesungen:

  • Informatik 1
  • Informatik 2
  • Web-Engineering
  • Softwaretechnik 1

literature

  1. Arinir, Doga, Ziesche, Peter "Java: Nebenläufige und verteilte Programmierung, 2. Auflage", W3l, 2010 http://www.w3l.de/w3l/jsp/shop/produktdetails.jsp?produktoid=317&navID=null

miscellaneous

Diese Veranstaltung wird im Sommersemester 2021 über Moodle organisiert. Interessierte Studierende können sich ohne Passwort einschreiben. Link: https://moodle.ruhr-uni-bochum.de/m/enrol/index.php?id=37224