• 6 heures
  • Moyenne

Ce cours est visible gratuitement en ligne.

course.header.alt.is_video

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 16/02/2024

Qu'est-ce qu'un design pattern ?

N’avez-vous jamais eu cette impression de toujours devoir résoudre le même type de problème ?

En développement logiciel, la majorité des fonctionnalités que l’on vous demandera de coder répondent à des problèmes très communs et forcément déjà résolus.

Dans ce cas, vous pouvez être tenté de réutiliser votre code, ou alors le code d’une librairie open source partagée et maintenue par la communauté.

En vous professionnalisant, vous utiliserez souvent des frameworks logiciels qui fournissent un ensemble d’outils répondant à des problèmes communs : Symfony pour le langage PHP, ou encore Django pour le langage Python.

Les frameworks sont très puissants, mais ils nécessitent en contrepartie un temps d’apprentissage assez long. D’autre part, si vous intégrez une équipe qui n’utilise pas le même langage ou le même framework que le vôtre, vous aurez quelques difficultés d’adaptation.

Les design patterns sont des solutions typiques à des problèmes communs en développement logiciel : ils ne sont pas une implémentation concrète d’une solution à un problème, mais plutôt une stratégie à appliquer pour le résoudre de façon élégante et maintenable.

Ils sont souvent confondus avec les algorithmes, qui eux aussi fournissent une solution à des problèmes communs. Mais là où l’algorithme est à appliquer exactement sur le modèle d’une recette de cuisine, les design patterns sont à adapter à votre code : un design pattern peut être implémenté de multiples façons.

Dans cette partie, nous allons aborder une liste de design patterns accessibles, répondant à trois grands types de problèmes :

  • la création d’objets ;

  • la gestion des relations entre objets ;

  • et enfin, la gestion des responsabilités et comportements d’un objet.

À la fin de cette partie, vous serez bien mieux outillé pour produire un code de qualité, certes, mais également pour résoudre les problèmes de vos clients ! Allons-y !

Et si vous obteniez un diplôme OpenClassrooms ?
  • Formations jusqu’à 100 % financées
  • Date de début flexible
  • Projets professionnalisants
  • Mentorat individuel
Trouvez la formation et le financement faits pour vous
Exemple de certificat de réussite
Exemple de certificat de réussite