Get the online training

Corejava Servlet Jsp  Php  Hibernate  Ajax Web Service   Ejb2.1 Ejb3.0 Struts Struts2  JPA Spring Ibatis   JSF    JSF2.0  CoreJavaDesignPattern    Jquery  Flex J2EE-Design-Patterns  Jboss7  Maven  Contact Me                                                                                                                                                                        
            IGNOU SMU PTU Project                                           Training                                                                                                                              

Contact Us  0091- 9210721663         jaiswaltraining@gmail.com

Web Service

Overview of Design Pattern

What is Design Patterns?
  • A pattern is a proven solution to a problem in a context.
  • Design patterns represent a solutions to problems that arise when developing
    software within a particular context.i.e Patterns = problems.solution pairs in a context
  • Each pattern has a name.
  • Use of each pattern has consequences.
  • Design patterns are language independent strategies for solving common object oriented problem.
  • Learning design patterns is good for people to communicate each other effectively.
Types of Design patterns
  • Creational Patterns.
  • Structural Patterns
  • Behavior Pattern

Creational Patterns.
  • These patterns focus on releasing coupling between
    two objects while creating them.
  • These reduce the coupling level by ramifying the new
    operator from the components.
  • These patterns have to do with class instantiation.
Design Pattern Distribution
Creational Patterns.
  • Abstract factory
  • Factory Method
  • Builder
  • Prototype
  • Singleton

Structural Patterns
  • Ease the design by identifying a simple way to realize
    relationships between entities.
  • These are concerned with how classes and objects are
    composed to form larger structure.
Design Pattern Distribution
Structural Patterns
  • Adapter
  • Bridge
  • Composite
  • Decorator
  • Fašade
  • Flyweight
  • Proxy
Behavioral Patterns
  • These are concerned of algorithm and assignment of
    responsibilities between objects .
  • Identify common communication patterns between
    objects and realize the patterns
  • specifically concerned with communication between
Design Pattern Distribution
Behavior Pattern
  • Command
  • Iterator
  • Chain of responsibility
  • Mediator
  • Observer
  • Strategy
  • State
  • Template Method
  • Visitor
Object-Oriented Programming
The big four OOP building blocks
Four pillars of OOP

  • Abstraction
  • Encapsulation
  • Polymorphism
  • Inheritance.
J2EE and Design Patterns

  • J2EE: AN OPERATING SYSTEM FOR THE WEB Enterprise web applications,
    which live on networks and are accessible through browsers, are redefining Enterprise Web Software. 
  • This is the next wave of computing.
  • The J2EE architecture is built to enable component developers to use
    a  Model View Controller (MVC) Design Pattern
Details of  MVC Design Pattern 

  • Name (essence of the pattern)
    • Model View Controller MVC
  • Context (where does this problem occur
    • MVC is an architectural pattern that is used when developing interactive application
      such as a shopping cart on the Internet.
  • Problem (definition of the reoccurring difficulty)
    • User interfaces change often, especially on the internet where look-and-feel is a competitive issue.
      Also, the same information is presented  in different ways. The core business logic and data is stable.
  • Solution (how do you solve the problem)
    • Use the software engineering principle of “separation of concerns” to divide
      the application into three areas: 
    • Model encapsulates the core data and functionality
    • View encapsulates the presentation of the data there can be many views of the common data
    • Controller accepts input from the user and makes request from the model for the
      data to produce a new view.

MVC Architecture

The Model represents the structure of the data in the application, as well as
application-specific operations on those data.

A View (of which there may be many) presents data in some form to a user,
in the context of some application function.

A Controller translates user actions (mouse motions, keystrokes, words spoken, etc.)
and user input into application function calls on the model, and selects the appropriate
View based on user preferences and Model state.

Advantages of MVC design Pattern

  • Separating Controller from View (application behavior from presentation)
    • Permits run-time selection of appropriate    
    • Views based on workflow, user preferences, 
    •  or Model state.
  • Separating Controller from Model (application behavior from data representation)
    • Allows configurable mapping of user actions on the Controller to application functions on  the Model.