Course : Design Patterns, implementation

Practical course - 5d - 35h00 - Ref. DES
Price : 2500 € E.T.

Design Patterns, implementation



Required course

This course will train you in application design and modern design practices such as test-driven development and refactoring. Numerous case studies will teach you how to create scalable and reusable applications, taking into account the main design patterns.


INTER
IN-HOUSE
CUSTOM

Practical course in person or remote class
Disponible en anglais, à la demande

Ref. DES
  5d - 35h00
2500 € E.T.




This course will train you in application design and modern design practices such as test-driven development and refactoring. Numerous case studies will teach you how to create scalable and reusable applications, taking into account the main design patterns.


Teaching objectives
At the end of the training, the participant will be able to:
Understand the fundamentals of object-oriented design
Apply the basic rules for dividing an application into packages
Apply the principles of application class construction
Put test-driven development into practice
Implementing the main Design Patterns

Intended audience
Designers, developers, architects or project managers.

Prerequisites
Knowledge of an object-oriented language.

Practical details
Hands-on work
Participant workshops will be run in the language of their choice (Python, Java, C++, C# or VB, .Net).

Course schedule

1
Design presentation

  • A reminder of the fundamentals of OOP and UML.
  • The benefits of UML for design.
  • The challenges of design.
  • Using inheritance. Advantages and disadvantages.

2
Fundamentals of object-oriented design

  • The open-close principle (OCP) and Liskov substitution principle (LSP).
  • Concept of polymorphism, weak coupling and strong cohesion.
  • The impact of object-oriented design on projects.
Hands-on work
Division of responsibilities between classes.

3
Class construction principles

  • Dependency management with dependency inversion (DIP).
  • Reducing apparent complexity by separating interfaces (ISP).
  • Division of responsibilities with GRASP.

4
Package organization principles

  • The package: a delivery/reuse design unit (REP) and common reuse (CRP).
  • Package breakdown. CCP.
  • Organization between packages.
Hands-on work
Building and prioritizing packages.

5
Test-driven development

  • Test Driven Development (TDD) versus Model Driven Engineering (MDE).
  • Writing test cases and test suites.
Hands-on work
Assigning responsibilities to software components using the TDD approach.

6
Design Pattern principles

  • Design Patterns for reusing experience.
  • Scope, advantages and limitations of Design Patterns.
  • Responding to recurring problems.
  • The founding patterns of Gamma and GoF: creation, behavior and structure patterns.
  • Refactoring. Why refactor?
  • Modification of code presentation and class algorithms. Redesign.
Hands-on work
Example of design, refactoring and programming with GoF patterns.

7
Software architecture and architectural patterns

  • From requirements to architecture.
  • Architectural styles.
  • Distribution patterns (Client Server Style, Data Bus Pattern, Blackboard, Repository).
  • System design patterns (MVC, layered architecture, Plug-in Style, Pipeline).

8
Development process

  • Design in an iterative, incremental process.
  • The Agile manifesto. XP, Scrum.


Customer reviews
4,1 / 5
Customer reviews are based on end-of-course evaluations. The score is calculated from all evaluations within the past year. Only reviews with a textual comment are displayed.
DAVID B.
29/06/26
4 / 5

Topics are clearly explained and presented in order of increasing difficulty. The trainer is calm and composed in their explanations, guiding us from start to finish. My only criticisms are: - Using Python examples in an object-oriented environment is a bit odd. I think examples in pseudocode or in a more object-oriented language (Java/C++/...) would be ideal. - I found it a bit repetitive to use the library example throughout the
ALMEIDA SILVA LUCAS D.
29/06/26
5 / 5

The oral part is sometimes much more informative than the course materials; some topics are covered very briefly (UML, etc.), but it’s not possible to go into everything in detail in five days. The trainer’s presence and responses were excellent.
CEDRIC D.
29/06/26
5 / 5

Very good




This programme is an original creation, developed by the teaching teams at ORSYS Formation. Any reproduction, representation, adaptation or use, in whole or in part, without the prior written authorisation of ORSYS, is strictly prohibited. ORSYS reserves the right to take any action necessary to protect its intellectual property rights.

Dates and locations
Select your location or opt for the remote class then choose your date.
Remote class

Dernières places
Date garantie en présentiel ou à distance
Session garantie

REMOTE CLASS
2026 : 7 Sep., 16 Nov.

2027 : 25 Jan., 25 Jan., 5 Apr., 5 Apr., 20 Sep., 20 Sep., 15 Nov., 15 Nov.

PARIS LA DÉFENSE
2026 : 16 Nov.

2027 : 25 Jan., 5 Apr., 20 Sep., 15 Nov.

LILLE
2026 : 16 Nov.



This programme is an original creation, developed by the teaching teams at ORSYS Formation. Any reproduction, representation, adaptation or use, in whole or in part, without the prior written authorisation of ORSYS, is strictly prohibited. ORSYS reserves the right to take any action necessary to protect its intellectual property rights.