Core Design Patterns


This 5-day Design Patterns Training will familiarize you with all the advanced techniques of Object-Oriented Design. Furthermore, you'll learn advanced Design strategies based on the most powerful Design Patterns. It will lay the ground to implement these patterns in an Object-oriented language like Java, C# or C++. This is a background all professional, serious developers should have. Without it, OO development requires hard labor but brings very little reward. Sessions offer a very balanced blend of lectures, case studies and exercises; it renders the learning process attractive, interactive, and very thorough.

Course Contents

  • Understanding systems and their different perspectives.
  • Differences and relationships between OOA & OOD.
  • UML-based OOD Pattern Design.
  • What Design Patterns are and why we need them.
  • Understanding the difference between Architectures and Designs
  • Understanding MVC Paradigm.
  • Understanding Modularization/ Properties of highly    modularized systems/Techniques to modularize the system.
  • Understanding different types of non-functional requirements and its impact on System Architecture/Planning.
  • Understanding Classes and Objects from systems perspective.
  • Understanding different types of relationships and how to model the same while modeling a Software Information System.
  • Understanding techniques to manage changes (Flexibility) to a System.
  • Understanding when to use Class Inheritance/Object Composition along with its pro’s and con’s.
  • Overview of Pattern and their classification.
  • Creational Patterns
  • Structural Patterns
  • Behavioral Patterns
  • Creational Patterns - Introduction & Overview
  • Factory Method
  • Abstract Factory
  • Builder
  • Prototype
  • Singleton
  • Structural Patterns - Introduction & Overview
  • Adapter
  • Iterator
  • Bridge
  • Façade
  • Flyweight
  • Dynamic Linkage
  • Virtual Proxy
  • Decorator
  • Behavioral Patterns  - Introduction & Overview
  • Chain of Responsibility
  • Command
  • Mediator
  • Snapshot
  • Observer
  • State
  • Strategy
  • Template Method
  • Visitor
  • Selecting the right Pattern
  • Creating a new Pattern
  • Adapting an existing Pattern
  • Case Study – Participants will be given a real life system to be designed and they will have to come out with the architecture of the system, highlighting the use of different design patterns to solve the respective problems.

Duration: 5 days

Venue: International

Program Target Beneficiaries

  • Architects
  • Designers
  • Project / Technical / Corporate Manager
  • Engineer
  • Analysts

Program Pre-requisites

The audience should have at least 5-6 years of experience wrt development and design of software systems based on any Object Oriented Programming Language (C++, JAVA, C# etc). The audience should also have a sound understanding of Object Oriented Analysis and Design.

Hemant Jha
Founder - VPlanSolutions
Researcher, Trainer