Design Patterns and Java Systems |
Duration: 3 days |
|
|
- Application developers
- Programmers
- System designers
|
|
Experience with Java |
|
|
Description |
This course covers aspects of design patterns, with particular emphasis
on their use with Java. Design patterns are presented from the
perspective of solving problems Java developers encounter as well
as productivity boosters. The course will present the design patterns
in UML and Java and show the applicability and the best match
of patterns to problems developers have in practical applications.
Particularly important points are the Java specific patterns and
constructs, as well as variations of patterns that satisfy particular
problems. The course will explore the relationships and applicability
of design patterns with Java Beans components. |
|
Objectives |
This course aims to significantly improve development skills of Java developers.
Design patterns are explored from a point of view of a Java developer
and you are shown the patterns most beneficial to practical Java programs.
- Identify applicability of particular design patterns for Java applications
- Identify fundamental and advanced concepts of design patterns
- Use and code design patterns with Java
- Combine design patterns with Java Beans components
- Design flexible and maintainable Java systems through use of design patterns
|
|
Course Outline |
Design Patterns
- Concepts
- Major issues
- Reuse of ideas
Java and Design Patterns
- Class hierarchy
- Programming for interfaces
- Inner classes
- Actions
Structural Organization of Components
- Composite pattern
- Variations of composite
- Iterators
- Iterator design issues and variations
|
|
Coordinating Component Behavior
- Reactive systems
- Observer pattern
- Mediator
- Event based approaches
- Event manager
- Strategy
- Notification designs and criteria
- Undoing actions
- Command pattern
Object Factories
- Creation of objects
- Java object factory
Proxy Patterns
- Remote access proxy
- Synchronization proxy
- The proxy family of patterns
| |