Design Pattern


A design pattern is pattern that is found in the code to resolve a common problem.

This section regroups articles about common design pattern.

Each design pattern adds a new word to the coding design grammar that coders can use to describe an architecture at a high level without going into the details.


Each pattern description should follow this format:

  • Preconditions: The patterns that must be satisfied before this one is valid. The sequence in which patterns are considered is one of the most important skills possessed by experts.
  • Problem: A summary of the problem addressed by the pattern. The problem statement is used by the reader to decide if the pattern is applicable.
  • Constraints: The constraints describe the conflicting (sometimes mutually exclusive) forces acting on any solution to the problem. Typical examples are tradeoffs between execution time and execution space, or development time and program complexity. Clearly stating priorities between constraints makes patterns easy to debate.
  • Solution: A two or three sentence summary of the solution to the problem. The solution is often accompanied by a diagram illustrating the activity required to transform a system from one that doesn't satisfy the pattern to one that does.

Documentation / Refrerence

Task Runner