Design Patterns


  1. Child Pages

Child Pages

Abstraction Layers
ContentsOverviewHow To Specify The Different Implementations?Vendor Lock-InBetter Unit TestingAbstraction Layer API RecommendationsOperating SystemGPIOUARTOverview Abstraction layers allow for portable code. They provide a custom “in-house” abstraction layer between your portable code and a third party library. If you ever need to change to a different third-party library (shall we stipulate here that it needs to offer … Continue reading Abstraction Layers
Dependency Injection
The basic idea, advantages/disadvantages, examples, relevance in firmware and more info about dependency injection, a software/firmware design pattern.
Futures And Promsises
ContentsOverviewC++Overview Futures and promises are a way of dealing with asynchronous events in a multi-threaded environment. A promise is used by the producer of the operation, and the future is used by the consumer. The producer writes a value to the promise. A future is used to read back the value, which can be done … Continue reading Futures And Promsises