Eine der ganz großen Innovationen im neuen C++-Sprachstandard (C++20) ist C++ Modules. Dieses Modulsystem soll das Ende der Header-Dateien und des Präprozessors, sowie der damit einhergehenden Probleme, einläuten.
In meinem Vortrag erläutere ich nicht nur die Funktionsweise, Unterschiede sowie die Vor- und Nachteile von C++ Modules im Vergleich zum alten Modularisierungskonzept mit Header- und Implementierungsdateien. Ich möchte insbesondere auch mal eine holistische Perspektive anbieten: Welchen Einfluss hat Modules auf die Software-Architektur?
Zielpublikum: Entwickler:innen, Software-Architekten:innen
Voraussetzungen: Kenntnisse in der Programmiersprache C++ sind hilfreich.
Schwierigkeitsgrad: Anfänger
Extended Abstract:
Das Interessante an dem neuen Feature "C++ Modules" ist nicht nur sein Potenzial, das mittlerweile antiquiert erscheinende, schwache und mit vielen Problemen (z.B. ODR violations) behaftete Modularisierungskonzept von der prozeduralen Programmiersprache C loszuwerden. Die Auswirkungen auch auf die Software-Architektur eines C++-Entwicklungsprojekts dürften bemerkenswert sein und die Art und Weise, wie C++-Entwicklungsprojekte in den nächsten Jahrzehnten strukturiert werden, massiv verändern. Genau diesem Aspekt möchte ich in meinem Vortrag auch Raum geben.