t.BA.IT.PROG2.19HS (Programmieren 2) 
Modul: Programmieren 2
Diese Information wurde generiert am: 29.11.2022
Nr.
t.BA.IT.PROG2.19HS
Bezeichnung
Programmieren 2
Veranstalter
T InIT
Credits
4

Beschreibung

Version: 3.0 gültig ab 01.08.2019
 

Kurzbeschrieb

In diesem Modul werden die erweiterten Konzepte der objektorientierten Programmierung am Beispiel der Programmiersprache Java und der dazugehörigen Umgebung Java Standard Edition vermittelt.
Übergeordnetes Ziel ist das Erstellen von qualitativ hochwertigen, verständlichen und gut wartbaren Programmcode unter Zuhilfenahme von verschiedenen, fortgeschrittenen Methoden, Techniken und Werkzeugen.

Modulverantwortung

Marti Christof (mach)

Lernziele (Kompetenzen)

Ziel Kompetenzen Taxonomiestufen
Die Studierenden verstehen die Konzepte von Nebenläufigkeit, können parallele Abläufe korrekt kontrollieren und synchronisieren. Sie sind in der Lage Probleme zu identifizieren und vermeiden. F, M K2, K3, K4
Die Studierenden verstehen die erweiterten funktionalen Sprachkonzepte von Java (Lambda, Streams) und können diese gezielt und effizient einsetzen. F, M K2, K3
Die Studierenden können Anwendungen mit einfacher graphischer Benutzeroberfläche entwerfen und erstellen. F, M K3
Die Studierenden verstehen das Prinzip von Isolated Testing und können es mit Hilfe von Mock-Tests gezielt umsetzen. F, M K2, K3

Modulinhalte

Erweiterte Java Sprachkonzepte
  • Fehler-/Ausnahmebehandlung
  • Innere Klassen & Anonyme innere Klassen
  • Lambda-Ausdrücke (Funktionale Interfaces)
  • Methodenreferenzen, Funktionen als Argumente und Rückgabewerte
  • Funktionale Streams
Nebenläufigkeit
  • Erzeugen und Beenden von Threads
  • Thread-Safety, Atomic-Types
  • Thread Synchronisation
  • Synchronized Queues 
  • Erweitertes Monitor-Konzept, Lock & Condition
  • Vermeiden von Deadlocks
  • Fortgeschrittenes Thread-Handling
Einfache graphische Benutzeroberflächen
  • GUI-Prinzipien, -Architektur, -Komponenten und -Layouts 
  • Grafikausgabe (Graphics) und erstellen eigener GUI-Komponenten
  • Model-View-Controller, Ereignisverarbeitung, Observer-Pattern
  • Verwendung komplexer Komponenten
Ein- und Ausgabe von Daten – Java IO
  • Umgang mit Dateien- & Verzeichnissen
  • Lesen und Schrieben von Dateien 
  • Java-Serialisierung, Encoding, Zeichensätze
Mock-Testing
  • Isolated Testing, Behaviour- vs. State-Testing
  • Stubbing und Behaviour-Verification
  • Erstellen von Mock-Tests 

Praktikum
Im Praktikum lösen die Studierenden jeweils auf das Thema der Vorlesung abgestimmte Übungen.

Lehrmittel/Materialien

Abgabe von für die Durchführung notwendigen Informationen im Unterricht.

Ergänzende Literatur

Java - The Complete Reference, 11th Edition, von Herbert Schild, McGrawHill, ISBN 978-1-26-044023-2
Java lernen mit BlueJ, 6. Auflage, David J. Barnes und Michael Kölling, ISBN: 978-3-8689-4907-0
Clean Code. A Handbook of Agile Software Craftsmanship von Robert C. Martin, Prentice Hall, ISBN 978-0-13-235088-4.

Zulassungs-voraussetzungen 

Kenntnisse die in PROG1 vermittelt werden.

Unterrichtssprache

(X) Deutsch ( ) Englisch

Teil des Internationalen Profils

( ) Ja (X) Nein

Modulausprägung

Typ 3b
  Details siehe unter: T_CL_Modulauspraegungen_SM2025

Leistungsnachweise

Bezeichnung Art Form Umfang Bewertung Gewichtung
Leistungsnachweise während Studiensemester Kontrollfragen und Programmierübungen schriftlich Pro Themenblock Punkte 20%
Semesterendprüfung Klausur schriftlich 90 Minuten Punkte 80%

Bemerkungen

Keine

Rechtsgrundlage

Die Modulbeschreibung ist neben Rahmenprüfungsordnung und Studienordnung Teil der Rechtsgrundlage. Sie ist verbindlich. Eine in der ersten Unterrichtswoche des Semesters schriftlich festgehaltene und kommunizierte Modulvereinbarung kann die Modulbeschreibung präzisieren. Die Modulvereinbarung ersetzt nicht die Modulbeschreibung.
Kurs: Programmieren 2 - Praktikum
Nr.
t.BA.IT.PROG2.19HS.P
Bezeichnung
Programmieren 2 - Praktikum

Hinweis

  • Für das Stichdatum 01.08.2099 ist kein Modulbeschreibungstext im System verfügbar.
Kurs: Programmieren 2 - Vorlesung
Nr.
t.BA.IT.PROG2.19HS.V
Bezeichnung
Programmieren 2 - Vorlesung

Hinweis

  • Für das Stichdatum 01.08.2099 ist kein Modulbeschreibungstext im System verfügbar.