Dec 15, 2009

Design Patterns

In one of the last classes, we talked a bit about design pattern. Design pattern is "is a general reusable solution to a commonly occurring problem in software design". It is not specific code but it describes the solution to the problem. This makes it compatible with different programming languages.

Design patterns became popular after the release of the famous book "Design Patterns: Elements of Reusable Object-Orientated Software" by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides, which are usually only known as the "Gang of Four (GoF)". This book describes Design Patterns and the advantages of using them as well as that it gives examples of 23 classic design pattern.



Design Pattern are usually described with their name and classification other names, a description of the goal and the reason why using it, scenario or context in which this pattern can be used, class / interaction diagrams, participating classes or modules and the way they interact, results, side effects or trade offs that can happen while using this pattern, a description of the implementation as well as a sample code, real usage and related pattern.

I think that everybody who wants to have some knowledge in programming or software development should have worked with Design Pattern. Using well-known code reduces the costs for development, reduces errors and makes the code easier to maintain.
Luckily, I gained some experience through my first software development class with the following Patterns: Singleton, Factory method, Facade.

No comments:

Post a Comment