Using Design Patterns in Java

Using Design Patterns in Java

Module 1: Introduction to Design Patterns

  • The use of design patterns
  • Implementation requirements
  • Library design

Module 2: Factories

  • Factory methods
  • Abstract factories
  • Implementation considerations
  • Using factories

Module 3: Other Methods of Creating Objects

  • Virtual constructors and Prototypes
  • Builders
  • Object Pools
  • Generic Implementations

Module 4: Adapters and Delegation

  • Delegation
  • Object adapter
  • Class adapter

Module 5: Abstraction and Implementation

  • Template methods
  • Strategies
  • Bridges

Module 6: Singletons

  • Use of singletons
  • Implementation of singletons
  • Lifetime issues

Module 7: Decorators and Policies

  • Flexible extension of functionality at runtime
  • The decorator inheritance
  • When not to use decorators
  • Using policies

Module 8: Commands

  • The need for storing commands
  • Using function objects
  • Do, undo and macro recording
  • Chaining using composites
  • Generic implementation

Module 9: Observers

  • Event handling basics
  • EventListener
  • Implementing signals and slots

Module 10: Miscellaneous Patterns

  • Facade
  • Iterators
  • Servant
  • Memento