Object Oriented Design Patterns and Best Practices in Java or C++ From Modulus Training
Sponsored links
This course consists of approximately 50% hands on lab work (Patterns) and group dynamics exercises (for OOAD). Throughout the course students will be led through a series of progressively advanced topics, where each topic consists of lecture and group discussion.
This class is “technology centric”, designed to train attendees in essential OO background coupling the most current, effective techniques with the most effective practices.
| Delivery: |
|
| Regions: |
|
| Category: |
Topics
Session: Object Oriented Design
• Static Design Concepts
- Multiplicity
- Interface And Implementation
- Good Abstractions
- Constraints And Qualifiers
• Dynamic Design Concepts
- Sequence Diagrams
- Collaboration Diagrams
- Identifying Messages
- Characterizing Messages
- State Diagram
• Domain Design
- Domain Model
- Identifying Responsibilities
- Coupling
Session: Introduction to Design Patterns
• Defining Design Patterns
• Why Use Design Patterns?
• Principles Behind Patterns
• Describing Patterns
Session: Creational Patterns
• Abstract Factory Design Pattern
• Singleton Design Factory
• Builder Design Pattern
• Factory Method Design Pattern
• Prototype Design Pattern
• Survey of Creational Patterns
Session: Structural Patterns
• Overview of Structural Patterns
• Composite Pattern
• Adapter
• Proxy
• Bridge Pattern
• Façade Pattern
• Decorator
• Survey of Structural Patterns
Session: Behavioral Patterns
• Observer
• Strategy
• Iterator
• Visitor
• Interpreter
• Chain of Responsibility
• Command
• Mediato
• State
• Comparison and Summary
Session: Application of Patterns
• Patterns with Client Applications
• Patterns for the Data Tier
• Patterns in the Business Logic Tier
Advanced Pattern Topics
• Advanced Topics
Session: Frameworks (Optional)
• Introduction to Frameworks
• Frameworks Illustration 1: JDBC
• Frameworks Illustration: Struts(Optional)
• Frameworks Illustration 2: Swing
Appendix: Introduction to UML(Optional)
Objectives
Working in a hands on environment, developers will explore key Creational, Structural and Behavior Design patterns and how they used most effectively in building robust, reusable applications. This course combines the use of hands on coding labs with several “mini projects” to be completed throughout the training to get the students using and reviewing the Patterns in a practical manner. All lab coding work and examples can be performed working in either a C++ or Java development environment, geared for each student’s specific background. Explicit labs have been designed for both backgrounds. Course examples in the Student Guide are written in Java.
The course also contains several “thinking and drawing” lab exercises as a component of the object oriented overview portion of the training course.
This comprehensive training course will begin with a review of core concepts of Object Oriented analysis & design using UML(approximately one day). Throughout the remainder of the course we will explore the following patterns, varying the levels of coverage to drill down on the most commonly used Patterns, and to simply survey others. Students will compare and contrast the patterns and explore the advantages and disadvantages of using certain patterns for explicit development functions in both the C++ and Java environments.
Prerequisites
This an basic level OO training course, designed for developers who need to identify, design, and lead the implementation of OO projects. We will explore and apply the terminology, the specification, the processes and technologies specific to OO. Attendees should be familiar with UML and have basic programming experience in either Java or C++. This course is not recommended for developers new to Java or new to C++ programming.
