What is a Design Pattern
A design pattern is a documented (semi-)best practice that has been applied successfully in multiple situations to solve a recurring problem.
GOF Patterns
GOF book has 23 patterns as follows:
Creational Patterns (Abstract Factory, Builder, Factory Method, Prototype, Singleton)
Structural Patterns (Adapter, Bridge, Composite, Decorator(Wrapper), Facade, Flyweight, Proxy)
Behavioral Patterns (Chain of Responsibility, Command, Interpreter, Iterator, Mediator, Memento, Observer, State, Strategy, Template Method, Visitor)
Basic Patterns
Interface, Abstract Parent Class, Private Method, Accessor Method, Constant Data Manager, Immutable Object, Monitor
Collectional Patterns
Composite, Iterator, Flyweight, Visitor
Other Structural Patterns
Virtual Proxy, Counting Proxy, Aggregate Enforcer, Explicit Object Release, Cache Object
Other Behavioral Patterns
Null Object, Object Authenticator, Common Attribute Registry
Concurrency Patterns
Core J2EE Patterns
Presentation Tier Patterns ( Intercepting Filter, Front Controller, Context Object, Application Controller, View Helper, Composite View, Service to Worker, Dispatcher View)
Business Tier Patterns (Business Delegate, Service Locator, Session Facade, Application Service, Business Object, Composite Entity, Transfer Object, Transfer Object Assembler, Value List Handler)
Integration Tier Patterns (Data Access Object, Service Activator, Domain Store, Web Service Broker )
Other J2EE Patterns
Enterprise Patterns
Architectural Patterns
Pattern catalog
All patterns in one big table.
Other References
Sun's Core J2EE Patterns Index
GOF Pattern in AllAppLabs





