IIR5009 Fortgeschrittene Programmierverfahren und Benutzungsoberflächen

Modulverantwortliche
  • Prof. Dr. Ing. Diethelm Bienhaus
Lehrende
  • Prof. Dr. Ing. Diethelm Bienhaus
Notwendige Voraussetzungen zur Teilnahme

Keine

Kurzbeschreibung

Prinzipien und Vorgehensweise der objektorientierten Analyse und Software-Entwicklung mit C++ werden vorgestellt. Qt als Bibliothek für graphische Bedienoberflächen wird vorgestellt. Ihre Verwendung wird durch Programmierprojekte erlernt.

Inhalte
  • Objektorientierte Modellierung
  • Vergleich C++ vs. Java
  • Referenztypen, virtuelle Methoden und Polymorphie
  • Templates, Standard Template Library (STL)
  • Modularität, Namespaces
  • Mehrfachvererbung, Ausnahmebehandlung in C++
  • Sicherheitsaspekte
  • Erweiterungen in C++11 / C++14
  • Eigenschaften der Bibliothek Qt
  • Entwurf und Implementierung von graphischen Benutzungsoberflächen
Qualifikations- und Lernziele

Fachkompetenzen

  • Die Studierenden können am Beispiel C++ fortgeschrittene Programmierkonzepte und -prinzipien sowie Techniken der Objektorientierten Analyse und des Objektorientierten Programmierens erklären.
  • Sie können geeignete Standardbibliotheken und Frameworks zur Implementierung von Benutzungsschnittstellen auswählen.
  • Sie können geeignete Vorgehensmodelle zur Entwicklung nutzerzentrierter Mensch-Computer-Interfaces auswählen.

Methodenkompetenzen (fachlich & überfachlich)

  • Die Studierenden können geeignete Methoden und Werkzeuge für die Realisierung grafischer Benutzungsoberflächen auswählen und einsetzen.
  • Sie können vorhandenes Wissen auf neue/spezifische Problemstellungen anwenden.
  • Sie können gängige Methoden und Tools/Sprachen zur Entwicklung nutzerzentrierter Mensch-Computer-Interfaces einsetzen.
  • Sie können in einem vorgegebenen Zeitrahmen Ergebnisse erarbeiten und diese präsentieren.

Sozialkompetenzen

  • Durch das gemeinsame Bearbeiten von Projektaufgaben sind die Studierenden in der Lage, im Team zu arbeiten und ihre Lösungsmöglichkeiten aus den genannten Gebieten zu kommunizieren.
  • Sie können Aufgaben in Gruppen-/ Teamarbeit gemeinsam konstruktiv lösen und sich gegenseitig unterstützen.
  • Sie sind in der Lage, effektiv zu kommunizieren, Konflikte zu erkennen und zu bewältigen sowie kooperativ in Gruppen zu arbeiten.

Selbstkompetenzen

  • Die Studierenden können sich selbstständig neues Wissen aneignen.
  • Sie können Präsentationsunterlagen erstellen und bei Einwänden verteidigen.
ECTS-Leistungspunkte (CrP)
  • 6 CrP
  • Arbeitsaufwand 180 Std.
  • Präsenzzeit 60 Std.
  • Selbststudium 120 Std.
Lehr- und Lernformen
  • 4 SWS
  • Seminaristischer Unterricht 2 SWS
  • Projektarbeit 2 SWS
Studiensemester
  • Informatik (M.Sc. 2022)
  • Ingenieur-Informatik (M.Sc. 2022)
Dauer
1 Semester
Häufigkeit des Angebots
Einmal im Jahr
Unterrichtssprache
Deutsch
Bonuspunkte

Nein

Bonuspunkte werden gemäß § 9 (4) der Allgemeinen Bestimmungen vergeben. Art und Weise der Zusatzleistungen wird den Studierenden zu Veranstaltungsbeginn rechtzeitig und in geeigneter Art und Weise mitgeteilt.

Prüfungsleistungen

Prüfungsvorleistung: Projektarbeit (Durchführung)

Prüfungsleistung: Projektarbeit (Dokumentation und Präsentation der Projektarbeit)

Benotung
Die Bewertung des Moduls erfolgt gemäß §§ 9, ggf. 12 (Teilleistungen), ggf. 18 (Arbeiten, Kolloquien) der Allgemeinen Bestimmungen (Teil I der Prüfungsordnung).
Verwendbarkeit
Gemäß § 5 der Allgemeinen Bestimmungen (Teil I der Prüfungsordnung) Verwendbarkeit in allen Masterstudiengänge der THM möglich.
Literatur, Medien
  • Stroustrup, B.: Die C++-Programmiersprache. Carl Hanser Verlag.
  • Breymann, U.: Der C++-Programmierer: C++ lernen – professionell anwenden – Lösungen nutzen. Carl Hanser Verlag.
  • Blanchette, J.; Summerfield, M.: C++-GUI- Programmierung mit Qt 4. Addison-Wesley.
  • Aktuelle Online-verfügbare Dokumentationen

Rechtliche Hinweise