Lecture: 2.01.021 Vorlesung - Parallele Programmierung mit Java-Threads - Details

Lecture: 2.01.021 Vorlesung - Parallele Programmierung mit Java-Threads - Details

You are not logged into Stud.IP.

General information

Course name Lecture: 2.01.021 Vorlesung - Parallele Programmierung mit Java-Threads
Subtitle inf021
Course number 2.01.021
Semester SoSe2021
Current number of participants 6
expected number of participants 12
Home institute Department of Computing Science
Courses type Lecture in category Teaching
First date Monday, 12.04.2021 08:00 - 10:00
Type/Form VL
Learning organisation Ziele

Die Veranstaltung „Parallele Programmierung mit Java-Threads“ ist eine Spezialveranstaltung im Modul „Fortgeschrittene Java-Technologien“. Die Veranstaltung findet im SoSe 2021 zum ersten Mal statt. Ziel der Veranstaltung ist es, Konzepte der parallelen Programmierung im Allgemeinen und der parallelen Programmierung mit Java-Threads im Speziellen kennenzulernen und selbst praktisch zu beherrschen.

Hinweis

Ziel des Moduls „Fortgeschrittene Java-Technologien“ (inf021) ist es, den Studierenden fortgeschrittene Konzepte der Programmierung mit Java zu vermitteln. Im Modul inf021 werden mehrere Veranstaltungen angeboten:
• Java-Praktikum (jedes Wintersemester): In dieser Veranstaltung werden die einzelnen Bereiche der JDK-Klassenbibliothek vorgestellt. Die Studierenden entwickeln durch Einsatz der entsprechenden Technologien/Klassen inkrementell ein großes Programm.
• informatiCup (jedes Wintersemester): Teilnahme an einem jährlich stattfindendem Programmierwettbewerb der Gesellschaft für Informatik
• Parallele Programmierung mit Java-Threads (jedes Sommersemester)

In den kommenden Jahren kommen evtl. noch weitere (Spezial-)Veranstaltungen dazu. Da jedes Modul nur einmal belegt werden kann, müssen sich die Studierenden entscheiden, welche der drei Veranstaltungen sie besuchen möchten: Entweder Java-Praktikum oder informatiCup oder parallele Programmierung.

Voraussetzungen

Die Teilnehmer sollten die Module PDA und OMP erfolgreich absolviert haben. Es können maximal 15 Studierende an der Veranstaltung teilnehmen.

Anmeldung/Bewerbung

Wer an der Veranstaltung teilnehmen möchte, muss sich bis zum 07.04.2021 im StudIP in der Veranstaltung „2.01.021 Vorlesung: Vorlesung - Parallele Programmierung mit Java-Threads (SoSe2021))“ anmelden und mir per Nachricht oder Email eine kurze Bewerbung (Name, Studiengang, Fachsemester, Motivation für Teilnahme, Wünsche, …) zukommen lassen.

Sollten sich mehr als 15 Studierende anmelden, entscheidet die Bewerbung bzw. ggfls. das Los.

Zeit und Ort

Formal besteht die Veranstaltung aus einer 2-stündigen Vorlesung und einem 2-stündigen Projekt/Übung. Praktisch findet die Veranstaltung allerdings als 4-stündige Veranstaltung ohne formale Trennung in zwei Teile statt. Die Teilnehmer und der Dozent treffen sich während der Veranstaltungszeit des SoSe 2021 jeden Montag von 8.15 – max. 11.45 Uhr online im BigBlueButton-Meeting der zugehörigen StudIP-Veranstaltung. Im Laufe jeder Woche müssen selbstständig bestimmte Aufgaben bearbeitet werden. Der reale Arbeitsaufwand für die Veranstaltung wird sich auf ca. 8-10 Stunden pro Woche belaufen (inkl. der 4 Stunden am Montag). Eine regelmäßige Teilnahme an den wöchentlichen Treffen wird ausdrücklich erwartet!

Ablauf

Jeden Montag stehen ein (oder mehrere) neue Themen auf dem Programm (siehe Inhalte). Der Dozent stellt die Grundlagen dieser Themen jeweils ausführlich inklusive vieler praktischer Demonstrationen vor. Nachfragen und Diskussionen sind dabei ausdrücklich erwünscht.

Anschließend werden praktische Programmieraufgaben gestellt, die dann gemeinsam oder in Eigenleistung (allein oder Gruppen) bearbeitet werden. Der Dozent ist während der Veranstaltungszeit online verfügbar und hilft bei Nachfragen und Problemen gerne weiter. In der Regel werden nicht alle Aufgaben während der Veranstaltung gelöst werden können, sondern müssen dann in der entsprechenden Woche von den Teilnehmern zuhause weiterbearbeitet werden.

Zu Beginn der Veranstaltung der darauffolgenden Woche stellen jeweils einzelne Teilnehmer des Praktikums ihre erarbeiteten Lösungen den anderen vor und es wird über die Lösungen diskutiert.

Inhalte

Folgende Inhalte sind u.a. geplant:

• Grundlagen von Threads
• Synchronisation
• Bedingungssynchronisation
• Semaphore
• Locks
• Verklemmungen
• Atomarität
• Queues
• Collections
• Rendezvousklassen
• Threadpools
• Fork-Join
• Parallele Streams
• JavaFX-Concurrency
• Java Memory Model

Prüfung und Bewertung

Prüfungsform des Moduls inf021 sind „fachpraktische Übungen“ („Eine fachpraktische Übung besteht aus einer Reihe von praktischen Versuchen, Übungsaufgaben oder Programmieraufgaben mit schriftlichen Ausarbeitungen (Versuchsprotokolle). Fachpraktische Übungen können eine mündliche Kurzprüfung oder eine Projektpräsentation beinhalten.“).

Jeden Montag wird ein Aufgabenblatt mit Programmieraufgaben ausgegeben. Dieses Aufgabenblatt wird am Montag während der Veranstaltungszeit und in der jeweiligen Woche bearbeitet. Wöchentlich sind von jedem Teilnehmer bis jeweils sonntags abends (23.59 Uhr) die Lösungen abzugeben. Die Abgabe erfolgt durch Hochladen eines entsprechenden Eclipse-Projektes (oder IntelliJ-Projektes mit Eclipse-Export) in einen entsprechenden Hausaufgabenordner in der zugehörigen StudIP-Veranstaltung.

Am Beginn der Veranstaltung jeden Montag werden gemeinsam die Aufgaben besprochen. Dabei stellen einzelne Studierende ihre Lösungen vor und wir diskutieren darüber. Im Laufe der Woche korrigiert der Dozent die Abgaben der einzelnen Studierenden und schickt ihnen Kommentare und eine Bewertung per E-Mail zu.

Anmeldeschluss zur Prüfung beim Prüfungsamt (via StudIP) ist der 31.05.2021!

In die Bewertung des Moduls fließen folgende Aspekte ein:

• Vollständige Bearbeitung aller Aufgaben
• Korrektheit und Qualität der Implementierung
• Mitarbeit in der Veranstaltung (Vorstellen eigener Lösungen und Diskussion)
• Mündliches Gespräch („Kurzprüfung“) in der letzten Veranstaltungswoche
Lehrsprache deutsch
Info-Link https://uol.de/medieninformatik/lehre/lehrveranstaltungen/parallele-programmierung-mit-java-threads

Rooms and times

No room preference
Monday: 08:15 - 09:45, weekly(13x)

Module assignments

Admission settings

The course is part of admission "Anmeldung gesperrt (global)".
Erzeugt durch den Stud.IP-Support
The following rules apply for the admission:
  • Admission locked.