Programmierung 3 (MI)
- Fakultät
- Ingenieurwissenschaften und Informatik 
- Version
- Version 15.0 vom 17.11.2019 
- Modulkennung
- 11B1670 
- Modulname (englisch)
- Programming 3 - Computer Science And Media Applications 
- Studiengänge mit diesem Modul
- Informatik - Medieninformatik (B.Sc.) 
- Niveaustufe
- 2 
- Kurzbeschreibung
- Die Programmierung grafischer und natürlicher Benutzeroberflächen zur Mensch-Maschine- Interaktion stellt eine von Studierenden des Studiengangs Medieninformatik erwartete Kompetenz dar. Im Interesse einer praxisorientierten Vermittlung werden die Lehrinhalte zur Programmierung mobiler und / oder zentralisierter Anwendungen (Apps) angewendet. Nach Abschluss des Moduls haben die Studierenden einen Überblick über Programmierparadigmen, kennen fortgeschrittene Programmierkonzepte und können diese zur Programmierung von Benutzeroberflächen zur Mensch-Maschine- Interaktion anwenden. 
- Lehrinhalte
- 1. Softwareparadigmen und fortgeschrittene Programmierkonzepte 
 2. Übertragung von Programmierkenntnissen auf spezifische Plattformen
 3. Programmierung Mensch-Maschine-Interaktion
 4. Parallelisierung und Nebenläufigkeit
 5. Ausnahmenbehandlung
 6. Komponenten-, Integrations- und Benutzeroberflächentests
 7. Nutzung von Frameworks und Bibliotheken
- Lernergebnisse / Kompetenzziele
- Wissensverbreiterung 
 Die Studierenden können nach Abschluss des Moduls wesentliche Softwareparadigmen erklären und kennen fortgeschrittene Programmierkonzepte sowie Ansätze zur Mensch-Maschine Interaktion, können diese auf die App-Entwicklung übertragen und anwenden, sowie Fehler im Programm identifizieren und beheben.
 Wissensvertiefung
 Können - instrumentale Kompetenz
 Studierende, die dieses Modul erfolgreich studiert haben, können Apps mit grafischer und natürlicher Benutzeroberfläche implementieren und testen.
 Können - kommunikative Kompetenz
 Können - systemische Kompetenz
 Die Studierenden kennen Werkzeuge, Bibliotheken und Frameworks und können diese anwenden, um Apps mit einer grafischen und natürlichen Benutzeroberfläche zu implementieren und zu testen.
- Lehr-/Lernmethoden
- Vorlesungen mit begleitenden Praktika 
- Empfohlene Vorkenntnisse
- Programmierung 1 (I), Programmierung 2 (I) 
- Modulpromotor
- Roosmann, Rainer 
- Lehrende
- Eikerling, Heinz-Josef
- Henkel, Oliver
- Kleuker, Stephan
- Roosmann, Rainer
- Tapken, Heiko
 
- Leistungspunkte
- 5 
- Lehr-/Lernkonzept
- Workload Dozentengebunden - Std. Workload - Lehrtyp - 30 - Vorlesungen - 30 - Labore - 2 - Prüfungen - Workload Dozentenungebunden - Std. Workload - Lehrtyp - 40 - Veranstaltungsvor-/-nachbereitung - 20 - Literaturstudium - 28 - Prüfungsvorbereitung 
- Literatur
- Uhlenboom C. (2016): Java ist auch eine Insel, Rhenwerk Computing, 12. Auflage
- Hettel J., Tran M. T. (2016): Nebenläufige Programmierung mit Java, dpunkt.verlag, 1. Auflage
- Louis D., Müller P. (2016): Android: Der schnelle und einfache Einstieg in die Programmierung und Entwicklungsumgebung, Carl Hanser Verlag, 2. Auflage
- Semler, J. (2016): App-Design, Rheinwerk Computing, 1. Auflage
- Inden M. (2015): Java 8 - Die Neuerungen, dpunkt.verlag, 1. Auflage
- Inden M. (2015): Der Weg zum Java-Profi, dpunkt.verlag, 3. Auflage
- Tamm M. (2013): JUnit-Profiwissen, dpunkt.verlag, 1. Auflage
- Eng L. Z. (2016): Qt5 C++ GUI Prgramming Cookbook, Packt Publishing, 1. Auflage
 
- Prüfungsleistung
- Klausur 2-stündig
- Projektbericht, schriftlich
 
- Unbenotete Prüfungsleistung
- Experimentelle Arbeit 
- Dauer
- 1 Semester 
- Angebotsfrequenz
- Wintersemester und Sommersemester 
- Lehrsprache
- Deutsch