Learning Patterns Your Source for Quality Technology Courseware

Exploring Design Patterns with Java

This course explores proven real-world techniques to meet the biggest challenge in the software development community - building quality systems which fulfill your requirements, and delivering them on time. The focus of the course is to give you the practical skills that are most critical in building well designed software systems. It is extremely hands-on and applied, as well as giving you the formal knowledge you need to be fully conversant in this important area.

This course explores the most common object-oriented design patterns (Gang of Four) and how to use these patterns to develop solid, robust and reusable software development applications.

The course covers the patterns in the three core areas: Creational, Structural, Behavioral.
It also briefly covers other types of patterns, such as Dependency Inversion (DI) and Enterprise Patterns.

This course is hands-on with design projects and programming labs. Code examples, when given in the course text,are geared towards Java, but there is no Java coding required in the labs. The labs are conceptual, and not coding-oriented. 

Course Objectives:

Skills Gained:

  • Explore and understand basic Design Pattern concepts
  • Use Design Patterns effectively to build robust, well designed, reusable systems
  • Be familiar with the GOF Patterns
  • Creational: Abstract Factory - (full), Factory Method - (full), Singleton - (full), Builder - (brief), Prototype - (brief)
  • Structural: Composite - (full), Adapter - (full), Proxy - (full), Bridge - (brief), Facade - (brief), Decorator - (brief)
  • Behavioral: Observer - (full), Strategy - (full), Iterator - (full), Visitor - (short), Interpreter - (short), Chain of Command - (short), Command - (short), Mediator - (short), State - (short)
  • Be familiar with other kinds of patterns (e.g. Enterprise Patterns)

Course Outline: