Thursday, October 11, 2007

Design Pattern – “An Object Oriented Designer thinking kit”

Life without it - like constructing your dream house without any layout and
realizing the problems in middle or after construction.

Life with it – now you have a layout on which you worked a lot before actual
construction, e.g. proper spaces for ventilation, future expendation, vastu
compliant, parking, entertaining guests, security systems and many more.

The whole idea behind design patterns is to develop a standardized way to represent general solutions to commonly encountered problems in software development.

Direct Benefits –
Biggest Benefit - Easily expandable and reusable structure.
Minimize testing Cost - Changes lead less overhead for re testing.
OOPs – All benefits of being object oriented

Indirect Benefits
Effective way to share experience, over time, we can build up catalogs of patterns. This enables
newcomers to software development to more effectively benefit from experience gained over the years.
There is formal documentation about the tradeoffs involved in software design decisions; about the pluses and minuses of development choices. Standardizing patterns makes it easier for all development professionals—beginners and experts alike—to explicitly understand the implications of their decisions.
The design patterns provide a common vocabulary. This makes communicating decisions to developers easier. Rather than describing a design in detail, we can use a pattern name to explain our plans.

Pattern Best Contributor - “Gang of Four” or GoF
1. Erich Gamma
2. Richard Helm
3. Ralph Johnson
4. John Vlissides

  • Design Patterns
    Creational
    Abstract Factory
    Builder
    Factory Method
    Prototype
    Singleton
    <>
    Behavioral
    Observer
    Chain of Responsibility
    Command
    Interpreter
    Iterator
    Mediator
    Memento
    State
    Strategy
    Visitor
    Template Method
    <>
    Structural
    Adapter
    Bridge
    Composite
    Decorator
    Facade
    Flyweight
    Proxy
    <>
    System
    MVC
    Session
    Worker Thread
    Callback
    Successive Update
    Transaction
    <>

if you feel you design a problem with your own way and that way can be useful for others then blog and patent your "Design Pattern".

sumit

No comments: