Interface-Designs und ihre Implementierungen – Teil 2: Realisierung und Zugriff

Der Einsatz von Software-Interfaces ist ein elementares Mittel zur Entwicklung von langlebigen und tragfähigen Software-Architekturen. Deshalb sollten sie so früh wie möglich in der Architektur etabliert werden, um diese zu stabilisieren. Der Software-Architekt kann so eine schnelle Aufgabenverteilung auf unabhängige Personen, Teams oder Standorte ohne weitere „Reibungsverluste“ sicherstellen.

Welche Varianten der Architekt beim Interface-Design kennen sollte und wie diese in den Programmiersprachen C und C++ implementierbar sind, verrät dieser Beitrag in seinem zweiten Teil – er zeigt Implementierungsansätze durch Assoziation, Komposition, Fassade, virtuelle Interfaces, nicht-virtuelle Interfaces, C++ Templates und CRTP-Pattern auf.

Interface-Designs und ihre Implementierungen – Teil 2: Realisierung und Zugriff weiterlesen

Interface-Designs und ihre Implementierungen – Teil 1: Struktur und Definition

Der Einsatz von Software-Interfaces ist ein elementares Mittel zur Entwicklung von langlebigen und tragfähigen Software-Architekturen. Deshalb sollten sie so früh wie möglich in der Architektur etabliert werden, um diese zu stabilisieren. Der Software-Architekt kann so eine schnelle Aufgabenverteilung auf unabhängige Personen, Teams oder Standorte ohne weitere „Reibungsverluste“ sicherstellen.

Welche Varianten Sie beim Interface-Design kennen sollten und wie diese in den Programmiersprachen C und C++ implementierbar sind, verrät dieser Beitrag. Der erste Teil stellt Interface-Konzepte und unterschiedliche Interface-Typen vor.

Interface-Designs und ihre Implementierungen – Teil 1: Struktur und Definition weiterlesen

Digitaler ESE Kongress mit über 1.100 Teilnehmern zeigt die Stärken der Embedded-Branche im Corona-Jahr

Es war eine gelungene Premiere! Deutschlands großer Leitkongress der Embedded-Softwarebranche hat es auch digital geschafft, die Branche wieder zusammenzubringen.

Digitaler ESE Kongress mit über 1.100 Teilnehmern zeigt die Stärken der Embedded-Branche im Corona-Jahr weiterlesen

Interface-Designs und ihre Implementierung

In seinem Vortrag auf dem in diesem Jahr virtuellem ESE Kongress 2020 stellt MicroConsult-Trainer Thomas Batt Interface-Konzepte vor und zeigt Implementierungsansätze in C und C++. Jetzt anmelden und Early-Bird-Ticket sichern!

Interface-Designs und ihre Implementierung weiterlesen

Der ESE Kongress wird digital

Es ist eine Premiere: Deutschlands großer Leitkongress der Embedded-Softwarebranche kommt zu Ihnen nach Hause oder ins Büro – digital, interaktiv, coronasicher und mit bewährt großem Umfang und fachlicher Tiefe. 

Der ESE Kongress wird digital weiterlesen

Datensicherheit als Schlüsselkriterium für moderne mobile Systeme

Mit den neuen Generationen von Multicore-Mikrocontrollern können höchste Anforderungen an vernetzte Systeme und Datensicherheit erfüllt werden. Doch Entwickler brauchen von den Anforderungen bis hin zur Implementierung das richtige Wissen, um Daten in dieser Umgebung effizient zu schützen.

Datensicherheit als Schlüsselkriterium für moderne mobile Systeme weiterlesen

Embedded-Software-Redesign Guide Teil 3: Anforderungen und Checkliste

Manchmal ist es nicht mehr damit getan, alten Code zu erweitern: Eine Rundumerneuerung muss her. Dieser Beitrag beschreibt Vorgehen rund um das Embedded-Software-Redesign und erläutert dabei die Begriffe Reverse-Engineering, Refactoring und Reengineering.

Veranstaltungsformen wie Workshops eignen sich ideal, um mit den passenden Wissensträgern die Anforderungen zu erfassen und zu dokumentieren. Um Anforderungen aus dem Programmcode abzuleiten, existieren keine Tools am Markt. Hier ist manuelle Arbeit gefragt. Erfahrungsgemäß ist es nicht möglich, 100% aller in der Software implementierten Anforderungen zu erfassen.

Embedded-Software-Redesign Guide Teil 3: Anforderungen und Checkliste weiterlesen

Embedded-Software-Redesign Guide Teil 2: Notwendigkeit erkennen

Manchmal ist es nicht mehr damit getan, alten Code zu erweitern: Eine Rundumerneuerung muss her. Dieser Beitrag beschreibt Vorgehen rund um das Embedded-Software-Redesign und erläutert dabei die Begriffe Reverse-Engineering, Refactoring und Reengineering.

Kundenunzufriedenheit sollte heute in jedem Unternehmen ein wichtiger Antrieb für Innovation sein. Bemerkt schon der Kunde Defizite bei der inneren Softwarequalität bzw. Prozessqualität, dann ist es kurz nach zwölf!

Embedded-Software-Redesign Guide Teil 2: Notwendigkeit erkennen weiterlesen

Embedded-Software-Redesign Guide Teil 1: Defizite und Auslöser

Manchmal ist es nicht mehr damit getan, alten Code zu erweitern: Eine Rundumerneuerung muss her. Dieser Beitrag beschreibt Vorgehen rund um das Embedded-Software-Redesign und erläutert dabei die Begriffe Reverse-Engineering, Refactoring und Reengineering.

Embedded-Software-Redesign Guide Teil 1: Defizite und Auslöser weiterlesen

C++11 Multithreading: Überblick, Highlights und Fallstricke

Was das C++ Multithread-API leistet und was bei der Portierung von Applikationen zu beachten ist

Seit der Einführung von C++11 bietet die Standardbibliothek von C++ auch Unterstützung für die Entwicklung von Multithread-Applikationen. Die Verwendung des C++ Multithread-APIs vereinfacht zwar die Portierung derartiger Anwendungen, führt aber gleichzeitig auch dazu, dass man sich auf die Möglichkeiten der Standardbibliothek beschränken muss, wenn man davon profitieren möchte. Nicht nur bei der Entwicklung von neuen Applikationen, sondern auch für existierende Anwendungen, die noch auf plattformspezifischen Multithread-Lösungen basieren, stellt sich deshalb die Frage, ob es sinnvoll ist, dieses API einzusetzen bzw. darauf umzustellen.

C++11 Multithreading: Überblick, Highlights und Fallstricke weiterlesen