Design Patterns Training (not only) for Embedded Systems
This training shows you under which conditions classic design patterns can be used efficiently even in embedded systems with limited resources.
A selection of the most suitable patterns is presented based on examples typical of embedded systems.
Most of the patterns are developed step by step in complete code examples before being presented in their final abstracted UML representation.
Moreover, as part of this process, solutions are discussed that are often applied but had better be avoided ("Anti Patterns").
This approach facilitates a well-grounded assessment of the memory and/or runtime cost in relation to the benefit of using a design pattern.
This course also highlights new debugging possibilities resulting from the application of design patterns, considerably reducing the development time and improving code quality which is crucial especially in embedded systems.
Software developers, software architects
Good knowledge of the programming language C++.
Introduction
- History
- What are design patterns?
- GoF design patterns
- Typical problems in embedded systems
- Design patterns in embedded systems
Creational Patterns
- Example - motor: interfaces
- Example - position tracking system: goods transport system
- Reusing the position tracking system for airplanes
- Design pattern Factory Method and Abstract Factory
- Design pattern Prototype and Singleton
Structural Patterns
- Design pattern Adapter
- Example: counter classes
- Design pattern Decorator
- Example: multithreading
- Design pattern Proxy
- Synchronization, Protection, Virtual and Remote Proxy
- Smart pointer
Behavioral Patterns
- Example: timer
- Design pattern Observer
- Design pattern Command
- Example: state machine
- Conventional implementation in C
- Porting to C++
- Design pattern State
- Example: user-defined memory management
- Partition and PartitionManager
- Flexible memory management using different Managers
- Dynamically configurable memory assignment strategy
- Design pattern Strategy
- Algorithms with fixed basic structure
- Design pattern Template Method
Implicitly Covered Patterns, Further Patterns
- Facade
- Composite
- Memento
- Chain of responsibility
- Flyweight
- Iterator
- Mediator
Practical Exercises
- Storage space and runtime measurement
- Design patterns as a means to improve performance
- Using patterns for debug purposes (workshop)
- Further development of a given project by using design patterns; the trainer will discuss all solutions individually with the respective training participants
FACE-TO-FACE TRAINING
Price * | Duration |
---|---|
2.250,00 € | 4.5 days |
Training code: E-DP * Price per attendee, in Euro plus VAT |
Face-To-Face - German
Date | Duration | |||
---|---|---|---|---|
07.06. – 11.06.2021 | 4.5 days | |||
18.10. – 22.10.2021 | 4.5 days | |||
07.03. – 11.03.2022 | 4.5 days | |||
Live Online - German
Date | Duration | |||
---|---|---|---|---|
07.06. – 11.06.2021 | 5 days | |||
18.10. – 22.10.2021 | 5 days | |||