Java Design Patterns (D72140) – Outline

Detailed Course Outline

Reviewing Object-Oriented Principles in Java
  • Describe how OO concepts apply to Java
  • Describe how OO principles apply to Java
  • List the goals of an OO language
  • Interpret Unified Modeling Language (UML) notation and create UML diagrams
  • Identify selected design patterns
Reviewing Gang of Four Patterns
  • List key behavioral, creational and structural patterns
  • Apply the Facade pattern
  • Apply the Strategy pattern
  • Apply the Observer pattern
  • Apply the Composite pattern
  • Review the Model-View-Controller (MVC) patterns
Implementing Patterns in Java
  • Use implementation patterns designed for Java
  • List forces affecting class, state, and behavioral patterns
  • Describe how patterns, idioms and refactoring differ from each other
Exploring Changes in Java EE Technology
  • Describe the design goals of the Java EE model
  • Describe improvements in the Java EE 6 model
Implementing Integration Patterns
  • Describe design patterns for the integration tier
  • Review Java EE integration changes that apply design patterns
  • Identify use cases for applying integration tier patterns
Implementing Patterns in Business Components
  • Describe the role of an enterprise bean
  • Describe design patterns for the business tier
Implementing Infrastructural Patterns in Java EE
  • Describe the role of infrastructural Java EE patterns
  • Describe the Service Starter pattern
  • Describe the Singleton pattern
  • Describe the Bean Locator pattern
  • Describe the Resource Binder pattern
Implementing More Infrastructure Patterns
  • Describe how Java EE interceptors work
  • Describe the Dependency Injection Extender pattern
  • Describe the Payload Extractor pattern
  • Describe the Context Holder pattern
  • Describe the Thread Tracker pattern
Exploring Anti-Patterns
  • Describe the Law of Leaky Abstractions
  • Define AntiPatterns
  • Describe Integration Tier AntiPatterns
  • Describe Business Tier AntiPatterns
  • Describe Presentation Tier AntiPatterns
Selecting Patterns for Architecture
  • Define the roles of architect, designer, and developer
  • Describe the relationship between design patterns and architecture
  • List guidelines for applying patterns to an architectural solution