CSC/ECE 517 Fall 2009/wiki2 11 sv
Design patterns
The idea of design pattern was first introduced by the architect Christopher Alexander in the field of architecture. Later it has been adapted for various other disciplines, including computer science.
A design pattern is a formal way of documenting a solution to a design problem in a particular field of expertise. In software engineering, a design pattern is a solution to a general and commonly occurring problem in software design. A design pattern is not a finished design that can be transformed directly into code. But it is a description or template for how to solve a problem that can be used in many different situations.
e.g.
We can find some common steps or building blocks in any process. Suppose we have to build a home. Then high level of disign will be based on how many rooms do we wish to have on each floor. once we are done with this then its just the matter of duplicating it for the other floors. This is very common and basic design for construction.
Design patterns in ruby
Almost every design patterns of ruby are borrowed from the GOF book. Following is the list of common pattern used in ruby.
- Template
- Strategy
- Observer
- Composite
- Iterator
- Commands
- Adapter
- Proxy
- Decorator
- Singleton
- Factory
- Builder
- Interpreter
Factory
Observer
===Introduction:===The observer pattern (sometimes known as publish/subscribe) is a software design pattern in which an object, called the 'subject', maintains a list of its dependents, called 'observers', and notifies them automatically of any state changes, usually by calling one of their methods. It is mainly used to implement distributed event handling systems.
Strategy
Conclusion
See Also
[1]
[2]
[3]
[4]
[5]
[6]
References
[1]
[2]
[3]