Learn Design Patterns with Java

Video description

Design Patterns give a software developer an array of tried and tested solutions to common problems, thus reducing the technical risk to the project by not having to employ a new and untested design. This course is a practical guide to learning design pattern with 100% coding involved. We encourage users to do coding in parallel while learning the course.

In this course, you will start by exploring the benefits of using design patterns for developers in their regular development environment. You will move on to see which design patterns are suited for which circumstances. You will see the different categories to which the Design Patterns belong. Throughout this course, each type of Design Pattern will be accompanied by a practical example and information on when to use a given Design Pattern. You will also be shown scenarios in which specific Design Patterns are to be avoided.

In the end, you will learn how to overcome any issues that may be encountered while using design patterns initially.

What You Will Learn

  • Understanding complex coding issues in easy-to-understand code examples
  • Brain-friendly examples with real-life analogies
  • Practical coding examples for practice and ease of understanding
  • Mini projects as assignments to ensure that you are able to apply design patterns
  • Practical guide for design patterns (not boring theory but 100% practical coding as a reference guide)
  • Will help you develop good coding habits
  • Understand complex designs and architecture effortlessly
  • Develop non-cluttered reusable code with industry standard proven solutions documented in design patterns


This course is for those programmers/developers who have a basic knowledge of OOPs (preferably in Java) and are looking to refine their code through design patterns in their day to day coding practice.

About The Author

Aseem Jain: Aseem Jain is currently working in the USA with Accion Labs Inc. and holds Masters in Computer Application (MCA) degree.

The senior programmer has 15 years' programming experience and is a very famous blogger with million views - "www.premaseem.wordpress.com". Aseem Jain, the author is a Design Pattern certified programmer. Currently, he is architecting a software platform for the Transport industry in the USA.

Table of contents

  1. Chapter 1 : Getting Started with Design Patterns
    1. The Course Overview
    2. How to Write Better Code
    3. Code Issues Versus Design Issues
    4. What Are Design Patterns
    5. Benefits of a Design Pattern for a Developer
    6. How Design Patterns Are Similar to Life Patterns
    7. Are Design Patterns Different for Different Languages
    8. Setting Up the Development Environment
    9. Issues Faced Due to Force Fitting Everything in Object Inheritance
    10. Fundamental Concepts of Code Reusability
  2. Chapter 2 : Categorization of Design Pattern
    1. No Silver Bullet to Solve All Design Issue in Software
    2. Recognize the Pattern of Problem and Design Solution to Solve It
    3. Categorizing Design Patterns
    4. Framework Architecture
  3. Chapter 3 : Creational Design Patterns
    1. Singleton Design Pattern
    2. Prototype Design Pattern
    3. Builder Design Pattern
    4. Factory Design Pattern
    5. Abstract Factory Design Pattern
  4. Chapter 4 : Structural Design Patterns
    1. Adapter Design Pattern
    2. Proxy Design Pattern
    3. Facade Design Pattern
    4. Bridge Design Pattern
    5. Composite Design Pattern
    6. Flyweight Design Pattern
    7. Decorator Design Pattern
  5. Chapter 5 : Behavioral Design Patterns - The Beginning
    1. Iterator Design Pattern
    2. Mediator Design Pattern
    3. Command Design Pattern
    4. Chain of Responsibility Design Pattern
    5. Interpreter Design Pattern
  6. Chapter 6 : Behavioral Design Patterns — the Conclusion
    1. Observer Design Pattern
    2. Strategy Design Pattern
    3. State Design Pattern
    4. Template Method Design Pattern
    5. Visitor Design Pattern
    6. Memento Design Pattern
  7. Chapter 7 : Conclusion
    1. When to Use Which Design Pattern?
    2. Mini-Project
    3. Anti Patterns
    4. Resources for Deeper Learning

Product information

  • Title: Learn Design Patterns with Java
  • Author(s): Aseem Jain
  • Release date: July 2018
  • Publisher(s): Packt Publishing
  • ISBN: 9781788838795