Go To AppexTech

Design Patterns Training

1: Hour Daily

Duration :-Months

 

At Appextech, most programs have been designed to blend traditional academic content with applied learning concepts taught in a laboratory environment in order to help students prepare for career opportunities involving technology.

Course Objectives:

After completing this course, participants will be able to:

  • Understand the principles of using design patterns
  • Understanding the architectural relevance of patterns
  • Understand commonly used design patterns and be able to recognize and implement them.
  • Choose the right design patterns for their own projects
  • Write flexible, reusable code.
  • Architect flexible, reusable component and maintainable Java EE applications

Prerequisite: UML, OOPS concepts.

Preferred: Experienced programmers with a strong Java background. Understanding of distributed architecture.

Hands on: Though concepts will be generic enough but hands on will be in Java.

Course contents:

A. UML Concepts

  1. Association
  2. Aggregation
  3. Composition

B. OOPS concepts in Design pattern relevance.

  1. Abstraction
  2. Encapsulation
  3. Inheritance

C. Design pattern terminologies and concepts.

  1. Static/Dynamic Binding etc.

D. Creational Patterns

  1. Factory Method: Apply object-oriented principles and concepts to object creation
  2. Abstract Factory: Use a factory approach when dealing with families of related objects
  3. Builder: Encapsulate creation as a sequence of steps
  4. Prototype: Simplify object creation in complex scenarios
  5. Singleton: Create single instance of the class

E. Structural Patterns

  1. Adapter: Interfacing incompatible classes
  2. Composite: Simplify implementing tree-like collections by defining operations which work for single and tree collections
  3. Decorator: Encapsulate implementing additional responsibilities related to a common interface
  4. Facade: Hide the complexity of a system behind a simple interface
  5. Proxy: Hide the complexity of accessing an object
  6. Bridge: Support abstractions/contracts and implementations to be extended independently
  7. Flyweight: Allow large numbers of similar objects to be represented by one object (and some state)

F. Behavioural Patterns

  1. Command: Encapsulate a request as an object
  2. Observer: Support loose-coupling between a subject and an observer
  3. State: Encapsulate and simplify implementation of systems with fundamentally state-based behaviour.
  4. Strategy: Encapsulate and simplify implementation of systems with fundamentally algorithm-based behaviour.
  5. Template: Encapsulate alternative system

G. Hands on to apply design pattern.

  1. design pattern course material is modular and may be tailored depending on business requirement.

 Back