1.4. General Design Patterns

The genre of software design pattern books was established with the publication of the 'Gang of Four' book [Gamma et al., 1994] in the 1990s. Since then a profusion of design pattern books have been published, including a small number explicitly for embedded systems, of which [Weir and Noble, 2000] is a good example.

The aim of all of these books is to capture the collective experience of skilled software engineers based on proven examples so as to help promote good design practices. This is achieved through the creation of design patterns, commonly defined to be 'solutions to a problem in a context'. The process of creating a design pattern reflects the way that experts, not just in software engineering but in many other domains as well, solve problems. In most cases, an expert will draw on their experiences of solving a similar problem and reuse the same strategies to resolve the problem at hand. Only rarely will a problem be solved in an entirely unique fashion. Design patterns are established by looking for common elements in the solutions to similar problems.

The Introduction to [Gamma et al., 1994] and the Patterns chapter of [Buschmann et al., 1996] provide a good discussion of pattern theory so we instead focus on how to get the best out of design patterns. Most people start with a design problem that they're not sure how to solve and so might start flipping through a design patterns book like this one looking for inspiration. Each of the patterns ...

Get Common Design Patterns for Symbian OS: The Foundations of Smartphone Software now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.