Seminar
Neue Programmierkonzepte in C++11
Ankündigung
Das Seminar wird in Form eines Blockseminars am Ende des Semesters abgehalten. Die Vorbesprechung mit Themenvergabe findet am Freitag, den 18. Oktober 2013 um 15:00 Uhr im Raum O27/531 statt.
Wenn Sie an dem Seminar teilnehmen möchten, aber nicht zur Vorbesprechung kommen können, wenden Sie sich einfach per E-Mail an den Veranstalter.
Details zum Ablauf und Materialen finden Sie auf der Rubikon-Seite zur Veranstaltung.
Inhalt
Gegenstand dieses Seminars sind die zahlreichen Neuerungen in der Programmiersprache C++ und der C++-Standardbibliothek in Form des 2011 verabschiedeten Standards ISO/IEC 14882:2011 (C++11). Im Mittelpunkt steht dabei die Frage, wie sich die neuen Mittel richtig einsetzen lassen, um fehlerfreien, ausnahmensicheren, einfach zu wartendenden Code zu schreiben, der zudem leistungsfähiger ist als „konventionelle“, auf dem Sprachstandard von 1998 bzw. 2003 basierende C++-Programme.
Von besonderem Interesse sind neue Programmieridiome, die sich aus diesen Änderungen ergeben: Regeln, die den Feinentwurf vereinfachen und sich tagtäglich als nützlich erweisen. Bisherige C++-Idiome bedürfen zum Teil einer Korrektur oder sind vielleicht schon überflüssig geworden. Daneben soll diskutiert werden, inwiefern und mit welchem Aufwand sich die neuen Mittel schon bisher in der Sprache umsetzen ließen, welchen Nutzen sie tatsächlich bieten und welche Alternativen während des Standardisierungsprozesses in Betracht gezogen wurden.
Voraussetzung: Programmierkenntnisse in C++ (C++98)
Themenliste
- Rvalue-Referenzen, Verschiebesemantik und Perfect forwarding (vorgemerkt)
- Variadische Templates und Template-Alias (vorgemerkt)
- Auto-Initialisierung und vereinheitlichte Initialisierungssyntax (vorgemerkt)
- Assertions und Berechnungen zur Kompilierzeit, andere Optimierungen
- Lambda-Funktionen und function-Template (vorgemerkt)
- Unicode-Unterstützung und benutzerdefinierte Literale
- Parallele Programmierung (vorgemerkt)
Nach Absprache sind weitere Themen möglich.
Für die als "vorgemerkt" markierten Themen gibt es bereits Interessenten, was aber nicht als Hinderungsgrund missverstanden werden sollte, an diesem Seminar teilzunehmen.
Literatur (Überblick)
- Bjarne Stroustrup: The C++ Programming Language, 4th edition. Addison Wesley, 2013
- Torsten T. Will: C++11 Programmieren. Galileo Computing, 2012
- Programming Languages — C++. Draft International Standard ISO/IEC JTC1 SC22 WG21 N3290, 2011
Verantwortung
Stefan Arnold
Prof. Dr. Jacobo Torán
Termine
Vorbesprechung mit Themenvergabe:
Freitag, 18.10.2013 15:00 Uhr in O27/531