Jun 06

Volker Hillmann

Parallelisierung mit modernen C++ in einer grafischen Oberfläche

Parallelisierung mit modernen C++ in einer grafischen Oberfläche von Volker Hillmann

In unserer Praxis als Unternehmensberater und Trainer ist uns aufgefallen, dass sehr viele C++ Programmierer in ihren jeweiligen Frameworks, speziell der Oberflächenbibliothek gefangen sind.
Dabei spielt es keine Rolle, ob es sich um eine proprietäre Lösung oder eine freizugängliche Bibliothek handelt.
Gerade die Verwendung dieser Frameworks führt aber immer wieder zu Stress und sehr hohen Migrationsaufwendungen. Ein Wechsel des Frameworks, und damit des Vendors oder der Plattform ist dann oft nicht möglich. Deshalb werden die meisten C++ Beispiele in Büchern oder auf Veranstaltungen wie dieser immer als normale Konsolenanwendung geliefert, den scheinbar kleinsten Nenner. Das führt dazu, dass der Eindruck hinterlassen wird, man könne in C++ keine modernen Oberflächen umsetzen, oder eben nur mit sehr hohen Aufwand.
In dieser Session werden viele Eigenschaften des neuen C++ Standards an dem roten Faden eines konkreten Beispiels gezeigt. Hier spielt die parallele Verarbeitung und der Zugriff auf das Dateisystem eine zentrale Rolle.
C++11 hat die Möglichkeiten Probleme zu lösen radikal geändert. Dazu gehören neue Spracheigenschaften und Erweiterungen der Standardbibliothek genauso wie Themen rund um Optimierung von Rückgabewerten und die RValues. In dieser Session werden Lambda- Ausdrücke verwendet und die Aufrufe von Funktionen über die bind- Methode an einen Algorithmus angepasst, so dass die Lösung mit Hilfe von Standardalgorithmen anstatt eigenen Codes in for- Schleifen gezeigt wird.
Notwendige Daten werden einfach in einem Tupel abgelegt, anstatt eine eigene Klasse zu nutzen. Und das neue Schlüsselwort auto darf in einer Session über modernes C++ natürlich auch nicht fehlen. Dabei erfolgt die Ausgabe mit Hilfe einer properitären Oberflächenbibliothek des C++Builder X, ohne dass die eigentlichen Kernfunktionalitäten des Beispiels von diesem abhängig werden. Vielmehr erfolgen die Ausgaben über C++ Streams.
Jeder C++ Entwickler sollte anschließend in der Lage sein, dieses Beispiel an seine favorisierte Entwicklungsumgebung und das verbundene Framework anzupassen.
Mit dieser Session wollen wir also einen Schritt rückwärts gehen, so dass die eigentlichen Frameworks genutzt werden, aber nicht mehr die Anwendung bestimmen.
So sind die Kernalgorithmen dieser Session mit den meisten C++14 - Compilern übersetzbar.
Wie in den Seminaren der adecc Systemhaus GmbH sollen auch hier die Techniken an einem konkreten Beispiel erklärt werden.

Auf unserem Video-Portal studios.ppedv.de findet man eine breite Basis an Informationen rund um das Thema IT.

Die Schwerpunkte bilden dabei nicht nur Microsoft-Technologien. Themen wie Visual Studio, .net, C++, C#, Angular JS und viele mehr werden von unseren professionellen Trainern detailliert erklärt.


"Vielen Dank für die hilfreichen Videos! Der Inhalt ist auf den Punkt gebracht."

Thomas M.

"Euer Content hilft mir sehr! Besonders interessieren würde ich mich für weitere Videos zum Thema: C++ Parallelisierung und die Erstellung von grafischen Benutzeroberflächen."

Peter H.

"Für jeden was dabei, egal ob Anfänger oder Profi."

Klaus G.

"Echt super, dass ich mir die Vorträge von den SQLdays hier ansehen kann. Leider konnte ich letztes Jahr bei der Konferenz nicht vor Ort sein."

Lana A.