Zum 01. September 2024 ging der Geschäftsbetrieb der MicroConsult Microelectronics Consulting & Training GmbH über an die MicroConsult Academy GmbH. Diese wird das Geschäft in vollem Umfang, mit dem bewährten Personal und mit der gewohnten hohen Qualität weiterführen. Ihre Fragen beantworten wir gerne unter kontakt@microconsult.com.

Experience Embedded

Professionelle Schulungen, Beratung und Projektunterstützung

Design Patterns Schulung (nicht nur) für Embedded-Systeme - Live-Online-Training

  • Inhalt
     
  • Ziele -
    Ihr Nutzen
  • Teilnehmer
     
  • Voraussetzungen
     

Lernen Sie abzuschätzen, unter welchen Bedingungen Sie klassische Entwurfsmuster - Design Patterns - auch in ressourcenlimitierten Embedded-Systemen gewinnbringend einsetzen können.

Die Schulung macht Sie mit den Mustern vertraut, die sich besonders gut für die typischen Anwendungen von Embedded-Systemen eignen. Sie können so nicht nur deren Speicherplatz- und Laufzeitkosten beurteilen, sondern diese auch durch Laufzeitmessungen überprüfen.

Sie erfahren, welche häufig verwendeten Lösungsansätze besser vermieden werden sollten ("Anti-Pattern"), lernen Sie Einsatzmöglichkeiten von Entwurfsmustern zum Zweck der Fehlersuche kennen und können diese anwenden.

Die Design Patterns Schulung richtet sich an C++ Software-Entwickler und Software-Architekten.

Gute Kenntnisse der Programmiersprache C++

Einführung in die Design Patterns (Entwurfsmuster)

  • Geschichtliche Entwicklung
  • Was ist ein Entwurfsmuster?
  • GoF Entwurfsmuster (GoF Design Pattern)
  • Typische Probleme in Embedded-Systemen
  • Entwurfsmuster (Design Patterns) in Embedded Systemen

Erzeugungsmuster

  • Beispiel: Applikation zur Steuerung eines Motors
  • Flexibles Design auf Basis von Schnittstellen (Interfaces)
  • Praktische Übung: Messung der Speicherplatz- und Laufzeitkosten einer Schnittstelle
  • Statische Polymorphie und dynamische Polymorphie im Vergleich
  • Beispiel: Positionsverfolgung für ein Warentransportsystem
  • Wiederverwendung des Positionsverfolgungssystems für Flugzeuge
  • Positionsverfolgung auf Basis des Entwurfsmusters "Abstrakte Fabrik" (Design Pattern "Abstract Factory")
  • Fabrikerzeugung mithilfe des Entwurfsmusters "Singleton" (Design Pattern "Singleton")

Strukturmuster

  • Beispiel: Applikation zur Steuerung eines Motors
  • Alternatives Design auf Basis des Entwurfsmusters "Adapter" (Design Pattern "Adapter")
  • Workshop-Übung: Debugging einer Counter-Applikation
  • Lösung mithilfe des Entwurfsmusters "Dekorierer" (Design Pattern "Decorator")
  • Beispiel: Multithread-Applikation
  • Identifikation der Probleme typischer Lösungsansätze
  • Flexibler Lösungsansatz auf Basis des Entwurfsmusters "Proxy" (Design Pattern "Proxy")
  • Schutz-Proxy, Virtueller Proxy, Remote Proxy
  • Smart-Reference / Smart-Pointer

Verhaltensmuster

  • Beispiel: Behandlung von Timer-Ereignissen
  • Flexible Lösung auf Basis des Entwurfsmusters "Beobachter" (Design Pattern "Observer")
  • Praktische Übung: Anwendung des Beobachter-Musters in einer Aufzug-Steuerung
  • Fallstricke beim Design bzw. der Implementierung von Interfaces
  • "Horizontale" und "vertikale" Interfaces
  • Ereignisbehandlung auf Basis des Entwurfsmusters "Befehl" (Design Pattern "Command")
  • Praktische Übung: Anwendung des Befehlsmusters in der Aufzug-Steuerung
  • Beispiel: Traditionelle Implementierung eines Zustandsautomaten in C
  • Objektorientierte Lösung mithilfe des Entwurfsmusters "Zustand" (Design Pattern "State")
  • Praktische Übung: Anwendung des Zustandsmusters in der Aufzug-Steuerung
  • Beispiel: Benutzerdefinierte Speicherverwaltung
  • Partitionen und deren Verwaltung mithilfe von Partition-Managern
  • Flexible Speicherverwaltung auf Basis des Entwurfsmusters "Strategie" (Design Pattern "Strategy")
  • Praktische Übung: Anwendung des Strategiemusters in der Aufzug-Steuerung
  • Beispiel: Strategien mit gemeinsamer Grundstruktur
  • Realisierung auf der Basis des Entwurfsmusters "Schablonenmethode" (Design Pattern "Template Method")

Weitere Muster

  • Entwurfsmuster "Fabrikmethode" (Design Pattern "Factory Method")
  • Entwurfsmuster "Prototyp" (Design Pattern "Prototype")
  • Entwurfsmuster "Fassade" (Design Pattern "Facade")
  • Entwurfsmuster "Kompositum" (Design Pattern "Composite")
  • Entwurfsmuster "Memento" (Design Pattern "Memento")
  • Entwurfsmuster "Zuständigkeitskette" (Design Pattern "Chain of Responsibility")
  • Entwurfsmuster "Fliegengewicht" (Design Pattern "Flyweight")
  • Entwurfsmuster "Iterator (Design Pattern Iterator)
  • Entwurfsmuster "Vermittler" (Design Pattern "Mediator")

Praktische Übungen in der Design Pattern Schulung

  • Die Übungen werden mit der Plattform IAR Embedded Workbench und dem Designwerkzeug Enteprise Architect durchgeführt

Zusätzlich zu den praktischen Übungen in den einzelnen Kursmodulen gewinnen Sie folgende Praxiskenntnisse:

  • Wie führe ich Speicherplatz- und Laufzeitmessungen durch?
  • Wie kann ich in Projekten Entwurfsmuster als Mittel zur Steigerung der Softwarequalität einsetzen?
  • Wie kann ich Entwurfsmuster zu Debug-Zwecken verwenden?
  • Wie kann ich gegebene Projekte durch die Anwendung von Entwurfsmustern weiterentwickeln?

Im Preis enthalten:
Trainingsdokumentation, Ihr Zertifikat sowie ggf. erforderliche Ziel-HW o.ä.


ALL INCLUSIVE!

Spätestens 3 Wochen vor Trainingsbeginn erhalten Sie eine verbindliche Durchführungsbestätigung.

Einige Tage vor dem Live-Online-Training erhalten Sie von uns E-Mails mit …

  • ausführlichen Infos rund um Ihr Training
  • Ihre Schulungsunterlagen (Download-Link)
  • einer Einladung zu einer optionalen Probesession mit dem Trainer
  • einer Einladung für die Schulungstage, mit Link und Zugangsdaten

Ggf. erforderliche Übungs-HW senden wir Ihnen rechtzeitig vorab zu.


ABLAUF

Verwandte Trainings

Software-Architektur-Schulung für Embedded-Systeme und Echtzeitsysteme - Live-Online-Training
Anmeldecode: L-EMB-AR

UML-Schulung: UML-Grundlagen und Einstieg in die modellbasierte Softwareentwicklung - Live-Online-Training
Anmeldecode: L-UML-G

UML-Praxis-Workshop: Praktischer Einsatz modellbasierter Softwareentwicklung für Embedded- und Echtzeit-Systeme - Live-Online-Training
Anmeldecode: L-UMLPRAX

Clean Code für C-Programme: Softwareentwicklung als Handwerkskunst - Der Weg zum Clean Code - Live-Online-Training
Anmeldecode: L-CLEANC

Objektorientierte Softwareentwicklung: Spezielle Programmierprinzipien mit C++ - Der Weg zum Clean Code - Live-Online-Training
Anmeldecode: L-OOPFC++

C++ Schulung für Ein- und Umsteiger: Grundlegende Programmiertechniken für C++ Entwickler - Live-Online-Training
Anmeldecode: L-C++

Embedded C++: Objektorientierte Programmierung für Mikrocontroller mit C++/EC++ und UML - Live-Online-Training
Anmeldecode: L-EC++


Verwandte Trainings

Live Online Training

Termin Preis *Dauer
18.11. – 22.11.20243.000,00 €5 Tage 
07.07. – 11.07.20253.000,00 €5 Tage 
16.03. – 20.03.20263.000,00 €5 Tage 
Anmeldecode: L-DP
* Preis je Teilnehmer, in Euro zzgl. USt.

> Download Blanko-Anmeldeformular
> Trainingsbeschreibung als PDF

Präsenz-Training - Deutsch

Termin Dauer
18.11. – 22.11.2024 4,5 Tage  
17.03. – 21.03.2025 4,5 Tage  
01.09. – 05.09.2025 4,5 Tage  
17.11. – 21.11.2025 4,5 Tage  

Live-Online - Englisch

Dauer
5 Tage  

Präsenz-Training - Englisch

Dauer
5 Tage  

Design Patterns Schulung (nicht nur) für Embedded-Systeme - Live-Online-Training

Inhalt

Einführung in die Design Patterns (Entwurfsmuster)

  • Geschichtliche Entwicklung
  • Was ist ein Entwurfsmuster?
  • GoF Entwurfsmuster (GoF Design Pattern)
  • Typische Probleme in Embedded-Systemen
  • Entwurfsmuster (Design Patterns) in Embedded Systemen

Erzeugungsmuster

  • Beispiel: Applikation zur Steuerung eines Motors
  • Flexibles Design auf Basis von Schnittstellen (Interfaces)
  • Praktische Übung: Messung der Speicherplatz- und Laufzeitkosten einer Schnittstelle
  • Statische Polymorphie und dynamische Polymorphie im Vergleich
  • Beispiel: Positionsverfolgung für ein Warentransportsystem
  • Wiederverwendung des Positionsverfolgungssystems für Flugzeuge
  • Positionsverfolgung auf Basis des Entwurfsmusters "Abstrakte Fabrik" (Design Pattern "Abstract Factory")
  • Fabrikerzeugung mithilfe des Entwurfsmusters "Singleton" (Design Pattern "Singleton")

Strukturmuster

  • Beispiel: Applikation zur Steuerung eines Motors
  • Alternatives Design auf Basis des Entwurfsmusters "Adapter" (Design Pattern "Adapter")
  • Workshop-Übung: Debugging einer Counter-Applikation
  • Lösung mithilfe des Entwurfsmusters "Dekorierer" (Design Pattern "Decorator")
  • Beispiel: Multithread-Applikation
  • Identifikation der Probleme typischer Lösungsansätze
  • Flexibler Lösungsansatz auf Basis des Entwurfsmusters "Proxy" (Design Pattern "Proxy")
  • Schutz-Proxy, Virtueller Proxy, Remote Proxy
  • Smart-Reference / Smart-Pointer

Verhaltensmuster

  • Beispiel: Behandlung von Timer-Ereignissen
  • Flexible Lösung auf Basis des Entwurfsmusters "Beobachter" (Design Pattern "Observer")
  • Praktische Übung: Anwendung des Beobachter-Musters in einer Aufzug-Steuerung
  • Fallstricke beim Design bzw. der Implementierung von Interfaces
  • "Horizontale" und "vertikale" Interfaces
  • Ereignisbehandlung auf Basis des Entwurfsmusters "Befehl" (Design Pattern "Command")
  • Praktische Übung: Anwendung des Befehlsmusters in der Aufzug-Steuerung
  • Beispiel: Traditionelle Implementierung eines Zustandsautomaten in C
  • Objektorientierte Lösung mithilfe des Entwurfsmusters "Zustand" (Design Pattern "State")
  • Praktische Übung: Anwendung des Zustandsmusters in der Aufzug-Steuerung
  • Beispiel: Benutzerdefinierte Speicherverwaltung
  • Partitionen und deren Verwaltung mithilfe von Partition-Managern
  • Flexible Speicherverwaltung auf Basis des Entwurfsmusters "Strategie" (Design Pattern "Strategy")
  • Praktische Übung: Anwendung des Strategiemusters in der Aufzug-Steuerung
  • Beispiel: Strategien mit gemeinsamer Grundstruktur
  • Realisierung auf der Basis des Entwurfsmusters "Schablonenmethode" (Design Pattern "Template Method")

Weitere Muster

  • Entwurfsmuster "Fabrikmethode" (Design Pattern "Factory Method")
  • Entwurfsmuster "Prototyp" (Design Pattern "Prototype")
  • Entwurfsmuster "Fassade" (Design Pattern "Facade")
  • Entwurfsmuster "Kompositum" (Design Pattern "Composite")
  • Entwurfsmuster "Memento" (Design Pattern "Memento")
  • Entwurfsmuster "Zuständigkeitskette" (Design Pattern "Chain of Responsibility")
  • Entwurfsmuster "Fliegengewicht" (Design Pattern "Flyweight")
  • Entwurfsmuster "Iterator (Design Pattern Iterator)
  • Entwurfsmuster "Vermittler" (Design Pattern "Mediator")

Praktische Übungen in der Design Pattern Schulung

  • Die Übungen werden mit der Plattform IAR Embedded Workbench und dem Designwerkzeug Enteprise Architect durchgeführt

Zusätzlich zu den praktischen Übungen in den einzelnen Kursmodulen gewinnen Sie folgende Praxiskenntnisse:

  • Wie führe ich Speicherplatz- und Laufzeitmessungen durch?
  • Wie kann ich in Projekten Entwurfsmuster als Mittel zur Steigerung der Softwarequalität einsetzen?
  • Wie kann ich Entwurfsmuster zu Debug-Zwecken verwenden?
  • Wie kann ich gegebene Projekte durch die Anwendung von Entwurfsmustern weiterentwickeln?