Summary
3 days
Through hands-on laboratory and focused class discussions, participants master essential skills by exploring, experimenting, and solving problems by using Design Patterns. Each student receives a handbook consisting of detailed and carefully crafted, modular guides that provide step-by-step instructions, command summaries, and essential diagrams and practical examples of using Patterns in C++ applications.
Audience
This course will benefit analysts and class designers as well as programmers and testers.
Prerequisites
- The students should be familiar with Object-Oriented Analysis and Design and the UML notation.
- The students should be proficient with C++ programming language.
Objectives
By the end of this course the participant will be able to:
Explain why Design Patterns are needed and use the following Design Patterns in the process of Software Development:
- Abstract Design Pattern
- Singleton Design Pattern
- Composite Design Pattern
- Interpreter Design Pattern
- Visitor Design Pattern
- Bridge Design Pattern
- Façade Design Pattern
Course Outline
Module 1: Introduction
Prerequisites Why is an Architecture Needed? Detailed Design Design Patterns Overview Types of Patterns Design Principles Summary Quiz
Module 2: Creational Patterns
Abstract Factory Design Pattern The Problem it Solves UML Diagram Problem Description Source Code Problem Discussion Pattern Description Example Exercise 1 Pattern Advantages Pattern Disadvantages Abstract Factory Pattern Summary Abstract Factory Quiz Singleton Pattern Pattern Description UML Diagram Implementation Example 1 Exercise 1 Implementation Example 2 Exercise 2 Summary Quiz Creational Patterns Overview Common Trend Among Creational Patterns Builder Pattern UML Diagram Factory Method Pattern UML Diagram Comparison of Creational Patterns Summary Quiz
Module 3: Behavioural Patterns
The Composite Pattern Problem Description Problem Example UML Diagram Pattern Advantages Pattern Shortcomings Implementation Concerns Design for Our Example Calculator Source Code Summary Exercise Interpreter Pattern Problem Description Problem Example Pattern Advantages Pattern Disadvantages Summary Quiz Exercise Visitor Pattern Problem Description UML Diagram Example Pattern Advantages Pattern Disadvantages Exercise Quiz Behavioral Patterns Overview Common Trend Among Behavior Patterns Chain of Responsibility Pattern UML Diagram Command Pattern UML Diagram Iterator Pattern UML Diagramm Mediator Pattern UML Diagram State Pattern UML Diagram Comparison of Behavioral Patterns Summary Quiz
Module 4 : Structural Patterns
Bridge Pattern Problem Description UML Diagram Pattern Description Example Exercise Quiz Façade Pattern Problem Description Benefits of Using Façade Pattern Example Exercise Quiz Structural Patterns Overview Common Trend Among Structural Patterns Adapter Pattern UML Diagram Decorator Pattern UML Diagram Proxy Pattern UML Diagram Comparison of Structural Patterns Quiz
Other Notes
This course can be delivered in a Windows or UNIX environment. |