Die Qt Experten

Modern C++

C++ ist eine schwierige und anspruchsvolle Programmiersprache. Wenn sie richtig eingesetzt wird, liefert sie die bestmögliche Leistung. Leider wird sie oft missbraucht, was eine Quelle vieler Probleme ist. Es zeigt sich jedoch, dass es bei bewusster Nutzung ausgewählter Sprachmerkmale relativ einfach sein kann, qualitativ hochwertige Software mit großer Leistung und Resistenz gegen Programmierfehler zu entwickeln. Ein solcher Codestil wird Modernes C++ genannt. Diese Schulung ist keine Einführung in die Sprache C++. Wie der Titel schon sagt handelt es sich um einen Workshop für Fortgeschrittene mit vielen praktischen Übungen. Er richtet sich an Entwickler, die bereits über professionelle Erfahrung mit C++ verfügen und die Probleme kennen, die durch die nachlässige Art der Programmierung in dieser Sprache entstehen. Der Workshop zielt darauf ab, das Wissen über die Sprache C++ zu vertiefen und zu zeigen, wie man viele der Probleme, die häufig im Produktionscode auftreten, vermeiden kann.

Agenda

Grundlagen

  • Stand der Dinge bei C++ – ein Überblick
  • Almost Always auto – wie das funktionieren kann
  • Praxis: Umbau auf auto – an welchen Stellen es sinnvoll ist
  • Neue statische & dynamische Container
  • Praxis: Container einsetzen

Erweitertes

  • C++ value object design in der std::chronos Bibliothek
  • Lambdas richtig benutzen mit STL-Algorithmen
  • Praxis: Lambdas & Algorithmen einsetzen
  • Type Erasure – am Beispiel von std::function
  • Praxis: Inheritance als Implementationsdetail

Weiterführendes

  • Threads mit C++ verstehen
  • Praxis: std::thread richtig einsetzen
  • Atomics in C++
  • Praxis: Themen übergreifende Praxis
  • Zusammenfassung des Workshops

Zielgruppe

  • Erfahrene C++-Entwickler
  • Sie benötigen einen PC mit einem aktuellen C++ Compiler (mindestens C++11)
  • Preise und Termine werden mit Ihnen vereinbart
  • Teilnahmeanzahl von 3-8 Personen möglich

Mit dem Kurs erhalten Sie

  • Qualitativ hochwertiges Handout als PDF
  • Quell-Code für Übungen inklusive Musterlösungen als ZIP-Datei
  • Zertifikat