
Software Development Trainings
About the Course
Description
Design patterns are solutions to software design challenges that can be commonly found in real-world application development.
This course covers 23 basic patterns that are generally considered to be the foundation for all other patterns. Some of the best known and important are Factory, Adapter, Composite, Observer, Strategy.Â
During the course participants will have the opportunity to practice these patterns using certain case studies and exercises(50% of time is dedicated to practical exercises).
Objectives
After completing the course participants will be able to:
-Â Â Â Â Â Â Â Â Â describe the patterns and principles of their use.
-Â Â Â Â Â Â Â Â Â understand the challenges and benefits of a design based on code reuse.
-Â Â Â Â Â Â Â Â Â use pattern-related terminology in discussions, design, and development.
-Â Â Â Â Â Â Â Â Â develop applications based on patterns.
Target Audience
Software Development Engineers, Technical Leads, Solution Architects
Prerequisites
A clear understanding of the principles of object-oriented programming.
At least two years of experience in working with object-oriented languages.
Basic knowledge of C++/C#/Java and UML.
Agenda
OOP, UML
Principles of object-oriented design
SOLID
GoF Patterns
Factory Method, Abstract Factory, Builder, Singleton, Prototype
Adapter, Bridge, Composite, Decorator, Façade, Flyweight, Proxy
Interpreter, Iterator, Visitor, Observer, Mediator, Memento,
Command, Chain of Responsibility, Template method, Strategy, State