Modulbeschreibung
C++ Advanced
Kurzzeichen:
M_CPlA
Unterrichtssprache:
Deutsch
ECTS-Credits:
4
Leitidee:
Die Studierenden können...
... fortgeschrittene Konzepte und Sprachmittel von Standard C++, wie Rvalue-Referenzen, Move-Semantik und Perfect-Forwarding, erklären und anwenden.
... funktionale und generische Programmierung zur Laufzeit und Compilezeit einsetzen.
... abhängig vom Anwendungsfall geeignete Sicherheitsgarantien in Fehlerfällen definieren und umsetzen.
... eigene Iteratoren implementieren.
... ein Programm implementieren, das mehrere Threads verwendet und die Inter-Thread-Kommunikation richtig realisiert.
... asynchronen Input/Output in ihren Programmen einsetzen.
... C++-Bibliotheken über eine C-Sschnittstelle für andere Programmiersprachen bereitstellen.
Modulverantwortung:
Corbat Thomas
Standort (angeboten):
Rapperswil-Jona
,
St.Gallen (Informatik Raster)
Zusätzliche Eingangskompetenzen:
Englisch
Modultyp:
Wahlpflicht-Modul für
Informatik Retro STD_14_UG
(Empfohlenes Semester: 6)
Kategorie:Grundlagen Informatik und Aufbau Informatik (I-gai)
Wahl-Modul für
Software Engineering STD_14 (PF)
Wahlpflicht-Modul für
Informatik STD_05
(Empfohlenes Semester: 4)
Kategorie:Aufbau Informatik (I-a)
Wahlpflicht-Modul für
Informatik STD_11
(Empfohlenes Semester: 4)
Kategorie:Aufbau Informatik (I-a)
Wahlpflicht-Modul für
Informatik STD_14
(Empfohlenes Semester: 6)
Kategorien:Aufbau (I_Auf), Informatik (I_Inf)
Wahlpflicht-Modul für
Informatik STD_21
(Empfohlenes Semester: 6)
Kategorien:Aufbau (I_Auf), Informatik (I_Inf)
Wahlpflicht-Modul für
Informatik STD_23
(Empfohlenes Semester: 6)
Kategorien:Aufbau (I_Auf), Informatik (I_Inf)
Modulbewertung:
Note von 1 - 6
Leistungsnachweise und deren Gewichtung
Modulschlussprüfung:
Schriftliche Prüfung, 120 Minuten
Inhalte
Modul- und Lerninhalt:
Rekapitulation der wichtigsten Themen des CPl-Moduls
Move-Semantik und Rvalue Referenzen
Typ-Deduktion für Template-Parameter und auto/decltype-Deklarationen
Perfect Forwarding
Explizites Heap-Memory Management
Iteratoren implementieren
Weiterführende Template-Themen wie Tag-Types und SFINAE
Compile-Time Computation
Literale Typen und Literal-Operatoren
Multi-Threading
Memory Model
Networking mit ASIO
Advanced Library Design: Exception-Safety, PIMPL und Hourglass Interfaces