Aller au contenu principal
Développement, Architecture

Design patterns

Les design patterns (patrons de conception) sont des solutions éprouvées à des problèmes récurrents en développement logiciel. Documentés par le Gang of Four, ils offrent un vocabulaire commun et des architectures réutilisables qui accélèrent la conception et améliorent la qualité du code.

Un langage partagé

Factory, Observer, Strategy, Decorator… Les design patterns fournissent un vocabulaire universel entre développeurs. Dire « on utilise un Strategy pattern ici » transmet instantanément l'intention architecturale, sans avoir à détailler l'implémentation. C'est un accélérateur de communication au sein des équipes.

Omniprésents dans les frameworks

Les frameworks modernes comme Symfony reposent massivement sur les design patterns : Dependency Injection, Event Dispatcher (Observer), Form Types (Builder), Voters (Strategy)… Comprendre ces patterns permet de tirer pleinement parti du framework et de l'étendre de manière élégante.

Les design patterns ne sont pas des recettes à appliquer aveuglément, ils sont des outils de réflexion qui guident vers des solutions élégantes quand le contexte s'y prête.

Même catégorie

Autres termes : Développement

A/B testing L'A/B testing compare deux variantes d'une fonctionnalité pour identifier celle qui performe le mieux. Méthode, outils et limites pour des décisions éclairées.
arrow_forward
API Une API (Application Programming Interface) est un contrat d'échange entre deux systèmes logiciels. Découvrez son rôle central dans les architectures web modernes.
arrow_forward
API Platform API Platform est le framework de référence pour créer des API REST et GraphQL en PHP/Symfony. Découvrez ses fonctionnalités et son rôle dans les architectures modernes.
arrow_forward
Accessibilité web L'accessibilité web (a11y) consiste à concevoir des sites et applications utilisables par tous, y compris les personnes en situation de handicap.
arrow_forward
Backend Le backend est la partie invisible d'une application web : serveur, base de données, logique métier et API. C'est le moteur qui fait tourner votre produit.
arrow_forward
Base de données Une base de données est un système organisé de stockage et de récupération d'informations. Relationnelle ou NoSQL, elle est au cœur de toute application web.
arrow_forward
Clean code Le clean code est une discipline de développement qui privilégie la lisibilité, la simplicité et la maintenabilité du code source.
arrow_forward
Code legacy Le code legacy désigne du code ancien, difficile à maintenir et à faire évoluer. Comment l'identifier, le gérer et le moderniser progressivement.
arrow_forward
Data pipeline Un data pipeline est une chaîne automatisée de traitements qui collecte, transforme et achemine les données d'une source vers une destination.
arrow_forward
Design system Un design system est un ensemble de composants, règles et guidelines partagés qui garantissent la cohérence visuelle et fonctionnelle d'un produit.
arrow_forward
Dette technique La dette technique est le coût caché des compromis techniques accumulés dans un projet. Découvrez comment l'identifier, la mesurer et la maîtriser avant qu'elle ne bloque votre évolution.
arrow_forward
ETL L'ETL (Extract, Transform, Load) est un processus de migration et d'intégration de données entre systèmes. Le socle de toute stratégie data.
arrow_forward
Elasticsearch Elasticsearch est un moteur de recherche et d'analyse distribué. Découvrez ses fonctionnalités, ses cas d'usage et comment il améliore l'expérience de recherche dans vos applications.
arrow_forward
Feature flags Les feature flags permettent d'activer ou désactiver des fonctionnalités en production sans nouveau déploiement. Un levier puissant pour livrer plus vite et réduire les risques.
arrow_forward
Framework Un framework est un socle logiciel structurant qui fournit conventions, outils et bibliothèques pour développer plus vite et plus proprement.
arrow_forward
Frontend Le frontend est la partie d'une application web avec laquelle l'utilisateur interagit directement : HTML, CSS, JavaScript et frameworks comme React.
arrow_forward
Headless CMS Un headless CMS sépare la gestion du contenu de sa présentation. Il expose le contenu via une API, consommable par n'importe quel front-end.
arrow_forward
Injection SQL L'injection SQL est une attaque qui manipule les requêtes de base de données via des entrées utilisateur non filtrées. Une menace toujours d'actualité.
arrow_forward
Jamstack La Jamstack (JavaScript, APIs, Markup) est une architecture web qui pré-génère les pages et s'appuie sur des API pour le contenu dynamique.
arrow_forward
Monorepo Un monorepo regroupe plusieurs projets ou modules dans un même dépôt Git. Avantages, inconvénients et quand cette stratégie est pertinente.
arrow_forward
NoSQL NoSQL désigne les bases de données non relationnelles, conçues pour la flexibilité, la scalabilité horizontale et les structures de données variées.
arrow_forward
OAuth2 / Authentification OAuth2 est le standard d'autorisation qui sécurise l'accès aux API et aux applications web. Découvrez ses mécanismes, ses flux et comment les implémenter correctement.
arrow_forward
OWASP L'OWASP (Open Web Application Security Project) est une organisation qui publie les standards de référence en matière de sécurité applicative, dont le célèbre Top 10.
arrow_forward
Observabilité L'observabilité est la capacité à comprendre l'état d'un système à partir de ses sorties. Logs, métriques et traces : les trois piliers pour piloter vos applications.
arrow_forward
PHP Découvrez PHP, le langage de programmation serveur le plus utilisé au monde. Ses forces, ses évolutions récentes et pourquoi il reste un choix stratégique pour vos projets web.
arrow_forward
PWA Une PWA est une application web qui offre une expérience proche d'une application native. Découvrez ses fonctionnalités, ses avantages et quand la préférer à une app mobile classique.
arrow_forward
Pentesting Le pentesting (test d'intrusion) consiste à simuler des attaques sur une application pour identifier ses vulnérabilités avant qu'un attaquant ne les exploite.
arrow_forward
PostgreSQL PostgreSQL est le système de gestion de base de données relationnelle open source le plus avancé. Découvrez ses forces, ses fonctionnalités et pourquoi le choisir pour vos projets.
arrow_forward
REST API Une REST API est une interface de programmation qui permet à des applications de communiquer via HTTP. Découvrez ses principes, ses bonnes pratiques et son rôle dans les architectures modernes.
arrow_forward
React React est la bibliothèque JavaScript la plus populaire pour construire des interfaces utilisateur dynamiques. Découvrez ses principes, ses avantages et ses cas d'usage.
arrow_forward
Redis Redis est un système de stockage en mémoire utilisé pour le cache, les files de messages et les sessions. Découvrez comment il accélère vos applications web.
arrow_forward
Refactoring Le refactoring consiste à restructurer du code existant pour le rendre plus lisible, maintenable et évolutif, sans modifier son comportement fonctionnel.
arrow_forward
Refonte d'application La refonte d'application consiste à reconstruire un logiciel existant. Découvrez les signaux qui l'imposent, les stratégies possibles et les pièges à éviter.
arrow_forward
SOLID SOLID est un acronyme regroupant cinq principes de conception orientée objet qui guident l'écriture de code flexible, maintenable et extensible.
arrow_forward
SQL SQL (Structured Query Language) est le langage standard pour interroger et manipuler les bases de données relationnelles. Un fondamental du développement web.
arrow_forward
SSR / CSR Le SSR (Server-Side Rendering) et le CSR (Client-Side Rendering) sont deux approches de rendu des pages web. Découvrez leurs différences, avantages et cas d'usage respectifs.
arrow_forward
Stack technique La stack technique est l'ensemble des technologies qui composent votre application. Découvrez comment la choisir pour garantir performance, maintenabilité et pérennité.
arrow_forward
Symfony Symfony est le framework PHP de référence pour les applications web d'entreprise. Découvrez ses avantages, son architecture et pourquoi les équipes techniques le choisissent.
arrow_forward
TailwindCSS TailwindCSS est un framework CSS basé sur des classes utilitaires. Découvrez son approche, ses avantages et pourquoi il accélère le développement d'interfaces web modernes.
arrow_forward
Tests automatisés Les tests automatisés vérifient le bon fonctionnement de votre application à chaque modification de code. Découvrez les différents types de tests et leur rôle dans un projet web.
arrow_forward
UX/UI L'UX (expérience utilisateur) et l'UI (interface utilisateur) sont deux disciplines complémentaires qui déterminent la qualité perçue d'une application.
arrow_forward
Vite Vite est un outil de build et de développement front-end qui révolutionne la vitesse de compilation. Découvrez son fonctionnement, ses avantages et son intégration avec Symfony.
arrow_forward
Web scraping Le web scraping est une technique d'extraction automatisée de données depuis des pages web. Cas d'usage, cadre légal et bonnes pratiques.
arrow_forward
WebSocket Le protocole WebSocket permet une communication bidirectionnelle en temps réel entre le navigateur et le serveur. Découvrez ses cas d'usage et son fonctionnement.
arrow_forward
Webhook Un webhook est un mécanisme de callback HTTP qui permet à une application de notifier une autre en temps réel lorsqu'un événement se produit. Fonctionnement et cas d'usage.
arrow_forward
XSS Le XSS (Cross-Site Scripting) est une vulnérabilité qui permet d'injecter du code malveillant dans une page web vue par d'autres utilisateurs.
arrow_forward

Même catégorie

Autres termes : Architecture

API Une API (Application Programming Interface) est un contrat d'échange entre deux systèmes logiciels. Découvrez son rôle central dans les architectures web modernes.
arrow_forward
API Gateway Une API Gateway est un composant d'architecture qui centralise les appels vers vos API, gérant authentification, rate limiting et routage.
arrow_forward
API Platform API Platform est le framework de référence pour créer des API REST et GraphQL en PHP/Symfony. Découvrez ses fonctionnalités et son rôle dans les architectures modernes.
arrow_forward
Architecture web L'architecture web définit la structure technique d'une application. Découvrez les principes fondamentaux pour concevoir des systèmes robustes, performants et maintenables.
arrow_forward
Audit technique L'audit technique analyse la qualité, la sécurité et la performance de votre application web. Découvrez ce qu'il couvre, comment il se déroule et ce qu'il vous apporte.
arrow_forward
Backend Le backend est la partie invisible d'une application web : serveur, base de données, logique métier et API. C'est le moteur qui fait tourner votre produit.
arrow_forward
Base de données Une base de données est un système organisé de stockage et de récupération d'informations. Relationnelle ou NoSQL, elle est au cœur de toute application web.
arrow_forward
Data pipeline Un data pipeline est une chaîne automatisée de traitements qui collecte, transforme et achemine les données d'une source vers une destination.
arrow_forward
ETL L'ETL (Extract, Transform, Load) est un processus de migration et d'intégration de données entre systèmes. Le socle de toute stratégie data.
arrow_forward
Headless CMS Un headless CMS sépare la gestion du contenu de sa présentation. Il expose le contenu via une API, consommable par n'importe quel front-end.
arrow_forward
Jamstack La Jamstack (JavaScript, APIs, Markup) est une architecture web qui pré-génère les pages et s'appuie sur des API pour le contenu dynamique.
arrow_forward
Knowledge silo Un knowledge silo se forme lorsqu'une seule personne détient la compréhension critique d'une partie du système. Risques et pratiques pour les éliminer.
arrow_forward
Microservices L'architecture microservices découpe une application en services indépendants, chacun responsable d'une fonction métier. Découvrez ses avantages, ses contraintes et quand la choisir.
arrow_forward
Migration technique La migration technique consiste à faire évoluer le socle technologique d'une application existante. Objectifs, stratégies et pièges à éviter pour réussir une migration.
arrow_forward
Monolithe L'architecture monolithique regroupe toute la logique d'une application dans un seul déploiement. Découvrez pourquoi elle reste le choix le plus pragmatique pour la plupart des projets web.
arrow_forward
Multi-tenant L'architecture multi-tenant permet de servir plusieurs clients (tenants) avec une seule instance d'application. Découvrez ses modèles, ses avantages et ses défis techniques.
arrow_forward
NoSQL NoSQL désigne les bases de données non relationnelles, conçues pour la flexibilité, la scalabilité horizontale et les structures de données variées.
arrow_forward
Performance web La performance web mesure la rapidité et la réactivité d'une application. Découvrez pourquoi elle est critique pour l'expérience utilisateur, le SEO et votre activité.
arrow_forward
REST API Une REST API est une interface de programmation qui permet à des applications de communiquer via HTTP. Découvrez ses principes, ses bonnes pratiques et son rôle dans les architectures modernes.
arrow_forward
Replatforming Le replatforming consiste à migrer une application vers une nouvelle plateforme technique en conservant les fonctionnalités existantes. Quand et comment l'envisager.
arrow_forward
SOLID SOLID est un acronyme regroupant cinq principes de conception orientée objet qui guident l'écriture de code flexible, maintenable et extensible.
arrow_forward
SSO (Single Sign-On) Le Single Sign-On (SSO) permet de se connecter une seule fois pour accéder à plusieurs applications. Fonctionnement, protocoles et bénéfices pour votre organisation.
arrow_forward
SSR / CSR Le SSR (Server-Side Rendering) et le CSR (Client-Side Rendering) sont deux approches de rendu des pages web. Découvrez leurs différences, avantages et cas d'usage respectifs.
arrow_forward
SaaS Le SaaS est un modèle de distribution logicielle où l'application est hébergée dans le cloud et accessible via un navigateur. Découvrez ses caractéristiques, avantages et enjeux techniques.
arrow_forward
Scalabilité La scalabilité est la capacité d'une application à absorber une augmentation de charge sans dégradation. Découvrez ses principes, ses stratégies et comment anticiper la montée en charge.
arrow_forward
Serverless Le serverless est un modèle d'exécution cloud où le fournisseur gère l'infrastructure. Vous ne payez que le temps d'exécution réel de vos fonctions.
arrow_forward
Symfony Symfony est le framework PHP de référence pour les applications web d'entreprise. Découvrez ses avantages, son architecture et pourquoi les équipes techniques le choisissent.
arrow_forward
WebSocket Le protocole WebSocket permet une communication bidirectionnelle en temps réel entre le navigateur et le serveur. Découvrez ses cas d'usage et son fonctionnement.
arrow_forward
Webhook Un webhook est un mécanisme de callback HTTP qui permet à une application de notifier une autre en temps réel lorsqu'un événement se produit. Fonctionnement et cas d'usage.
arrow_forward
Voir tout le glossaire arrow_forward

Un projet en lien avec design patterns ?

Échangeons sur vos enjeux techniques. Pas de discours commercial, pas de jargon inutile : un diagnostic clair et des solutions concrètes.