Design Pattern

IV Patterns are discoverable and documentable
V Patterns are not methods or framework
VI Patterns give you hint to solve a problem effectively

Categorizing Design Patterns:
Patterns focus on different types of problems. Related patterns are grouped together and assigned a type. This helps programmers to identify similar types and further it simplifies the process of comparing similar patterns to find the appropriate one(s) to utilize.

I Classification of Design Patterns in general spectrum:

1 Creational Patterns
2 Structural Patterns
3 Behavioral Patterns

II JEE-specific Design Patterns

1 Presentation tier patterns
2 Business tier patterns
3 Data Access tier patterns

1. Creational Patterns

This design category is all about the class instantiation.
Creational pattern uses class-creation patterns and objectcreational patterns. The class-creation pattern uses inheritance effectively in the instantiation process while objectcreation pattern uses delegation to get the job done. All the creational patterns define the best possible way to instantiate an object. They describes the best way to create the object instances. Many times, nature of the created object changes according to the nature of the program. In such scenarios, we use patterns to give this a more general and flexible approach, for example a object instance can be created using a new operator, which is a hard coding methodology (hard


coding should be the last option to go with).
There are five types of Creational Patterns.

I Factory Pattern
II Abstract Factory Pattern
III Builder Pattern
IV Prototype Pattern
V Singleton Pattern

2. Structural Patterns

Structural Patterns describe how objects and classes can be combined to form larger structures. The difference between class patterns and object patterns is that class patterns describe abstraction using inheritance and describe how it can be used to provide more useful program interface. Object patterns, on other hand, describe how objects can be associated and composed to form larger, more complex structures. There are seven structural patterns described. They are as follows:

I Adapter Pattern
II Bridge Pattern
III Composite Pattern
IV Decorator Pattern
V Facade Pattern
VI Flyweight Pattern
VII Proxy Pattern

3. Behavioral Patterns

Behavioral patterns are those patterns which are specifically concerned with communication (interaction) between the objects. The interactions between the objects should be such that they are talking to each other and still are loosely coupled. The loose coupling is the key to n-tier architectures. In this, the implementations and the client should be loosely coupled in order to avoid hard-coding and dependencies. The behavioral patterns are:

• Chain of Responsibility Pattern
• Command Pattern
• Interpreter Pattern
• Iterator Pattern
• Mediator Pattern
• Momento Pattern
• Observer Pattern
• State Pattern
• Strategy Pattern
• Template Pattern
• Visitor Pattern

II JEE-specific Design patterns:

The term JEE is tossed around a lot because it covers the

July 2007 | Java Jazz Up |28
Pages: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53 ,            Download PDF