***NEW: C++1x für eingebettete Systeme kompakt

Summary


  • Date: 2017-11-21
  • Duration: 09:00 - 17:00
  • Location: Ludwigsburg, NH Hotel
  • Language: DE
  • Speaker: Andreas Fertig
  • Early Bird: 760,- € (plus 19% VAT/MwSt.) till/bis 2017-08-21
  • Price: 825,- € (plus 19% VAT/MwSt.)

Überblick

Die Flexibilität der Sprache C++ hat sich mit den Neuerungen durch den Standard C++11 und seinen Nachfolgern noch weiter verbessert. Einige dieser Neuerungen sind für eingebettete Systeme besonders interessant. Berechnungen von der Lauf- in die Compile-Zeit zu verschieben ist jetzt möglich. Dadurch entsteht ein kleinerer Code und eine erhöhte Geschwindigkeit.

Sind Sie es außerdem leid, ++i zu schreiben und sich immer noch gelegentlich mit > und >= zu vertun? C++1x unterstützt Sie, indem es wiederkehrende Schreibarbeiten dieser Art dem Compiler überlässt. Als Resultat gewinnen Sie mehr Zeit um wirklich anspruchsvollen Code zu schreiben.

In diesem eintägigen Seminar erfahren Sie, wie C++1x Sie unterstützt, um einen schnelleren und robusteren Code zu schreiben.

 

Inhalt

In diesem Seminar lernen Teilnehmer C++1x mit Praxisbezug zu eingebetteten Systemen kennen und anwenden. Obwohl C++1x nicht speziell für eingebettete Systeme entwickelt wurde, enthält die Sprache verschiedene wertvolle Eigenschaften für solche Systeme. Die Teilnehmer erhalten das Wissen, um bewusster Code-Größe oder Performance zu optimieren.

Ein Beispiel ist static_assert. Mit dieser Funktion, ist es möglich Bedingungen bereits zur Compile-Zeit zu überprüfen. Berechnungen können mit constexpr-Funktionen ebenfalls bereits zur Compile-Zeit erledigt werden. In beiden Fällen wirkt sich die Anwendung positiv auf das Laufzeitverhalten und die Code-Größe aus. Der Einsatz von Move-Semantics verspricht bei Kopieroperationen schneller und effizienter zu sein. Teilnehmer lernen, wie Move-Sematics funktionieren, was bei ihrem Einsatz zu beachten ist und in welchen Situationen das Feature vom Compiler deaktiviert wird.

Im Verlauf des Seminars lernen die Teilnehmer, welche neuen Features von C++1x sie nutzbringend in ihre Code-Basis aufnehmen können. Komplexe Probleme lassen sich durch die erweiterte Unterstützung des Compilers einfacher formulieren. Der neu entstandene Code wird dadurch oft robuster und weniger fehleranfällig. Alle Teilnehmer, die mit einem älteren Compiler ohne C++1x arbeiten, erhalten Tipps und Anregungen, wie sie neue Features in ihrem Code verwenden können.

Nach dem Seminar schreiben Teilnehmer klareren und präziseren Code. Sie werden u. a. Code-Reviews einfacher und sicherer bestehen.

 

Zielgruppe/Voraussetzung:

Entwickler oder Architekten von C++ basierten Systemen. Gute Kenntnisse der Sprache C++ sind vorausgesetzt. Konzepte und Neuerungen aus C++1x werden eingeführt.

 

 

Die Themen in Stichworten:

    • Sauberer und moderner C++ Code
    • Dinge zur Compile-Zeit erledigen: constexpr, constexpr if
    • Die richtige Wahl zur richtigen Zeit: Präprozessor, inline oder constexpr
    • ROM-barkeit
    • Interessante C++1x Elemente für eingebettete Systeme: override, auto, literal-operator, alignof, alignas
    • Einfluss von C++1x auf Performance und Code-Größe
    • GSL als Unterstützung: narrow_cast, not_null, finally
    • Templates: die richtige Dosis
    • Virtuelle Funktionen und ihre Kosten
    • Verwendung der neuen initializier-Listen
    • Neue Features in eine existierende Code-Basis portieren

 

Format

Interaktive Vorlesung. Die Teilnehmer sind herzlich eingeladen, während des Seminars mit dem Kursmaterial zu experimentieren.

Andreas Fertig
Andreas Fertig
Andreas Fertig studierte Informatik in Karlsruhe. Bereits seit seinem Studium befasst er sich mit eingebetteten Systemen und den damit einher gehenden Anforderungen und Besonderheiten.



Contact


Phone
+49 (0)711 138183-0

E-Mail
seminare@qa-systems.de

Terms and Conditions
Start
Trial
QA-Systems