0% ont trouvé ce document utile (0 vote)
16 vues18 pages

INF461 Support 1 Introduction 24 25

Le document présente les principes et processus du logiciel, en se concentrant sur les design patterns comme solutions réutilisables à des problèmes récurrents en développement logiciel. Il souligne l'importance de la modularité, de la cohésion et du couplage pour la qualité des logiciels, tout en mentionnant les avantages et inconvénients des design patterns. Enfin, il décrit les catégories de design patterns et recommande des ouvrages pour approfondir le sujet.

Transféré par

etorikevin
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
16 vues18 pages

INF461 Support 1 Introduction 24 25

Le document présente les principes et processus du logiciel, en se concentrant sur les design patterns comme solutions réutilisables à des problèmes récurrents en développement logiciel. Il souligne l'importance de la modularité, de la cohésion et du couplage pour la qualité des logiciels, tout en mentionnant les avantages et inconvénients des design patterns. Enfin, il décrit les catégories de design patterns et recommande des ouvrages pour approfondir le sujet.

Transféré par

etorikevin
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

INF461:

PRINCIPES ET PROCESSUS
DU LOGICIEL

Design Patterns
Chargé de cours............................................Dr KIMBI XAVERIA
Construction des systèmes
logiciels

Qui résolvent des


Objectif du problèmes réels
GL Qui résolvent ces
problèmes de façon
correcte
Objectif du GL
Des logiciels de bonne qualité

Utilisation facile
Facile à faire évoluer
Simple à maintenir
Facilement compréhensible
Motivations
Difficultés:
De développer des logiciels
extensibles et
réutilisables,efficaces,
Il faut entre autre:
Définir une bonne architecture
Réaliser une bonne conception
Utiliser les bonnes manières et avoir de bonnes
habitudes
Motivations
Il est essentiel de comprendre les techniques bien
éprouvées, qui on déjà montré leur capacité à
résoudre des problèmes de éveloppement
récurrents.

On constate qu’
En développement (conception et
implémentation), comme dans toute discipline,
certains problèmes sont récurrents.
Un développeur expérimenté sait identifier de tels
problèmes, et connaît généralement leur solution.
Motivations
Et donc ,Pourquoi ne pas répertorier ces problèmes
et leur solutions, afin de faciliter l’activité de
développement.

=> Patrons de conception / Design Patterns


Les patrons de conception (« Design Patterns »)
sont des solutions qui aident à saisir, spécifier et
mettre en œuvre ces techniques éprouvées.
Définitions
Patron / modèle / motif de conception
(design pattern) :
Une solution réutilisable à un
problème récurrent de conception
logiciel, dans un certain contexte.
Solution connues et éprouvée dont la
conception provient de l’expérience
de programmeurs
Objectifs des design pattern
les patrons de conceptions visent :

facilité de gestion a travers la


la modularité: technologie objet

degré avec lequel les tâches


réalisées par un seul
la cohésion : module sont fonctionnellement
reliées. Une forte cohésion est
une bonne qualité pour un
logiciel.
Objectifs des design pattern
les patrons de conceptions visent
également :
degré d'interaction entre les
modules dans le système.
Le couplage : Un couplage faible est une
bonne qualité.

La les patterns de conceptions


forment des bibliothèques et
réutilisabilité: des Framework utilisables pour
la définition des architectures.
Avantages et utilités des design
patterns
Amélioration de l’efficacité, la robustesse, la
lisibilité du code.
Aide à la gestion de la complexité du logiciel
Capitalisation de l'expérience : réutilisation
de solutions qui ont prouvé leur efficacité
Un développement beaucoup plus rapide
L’élaboration et la construction des
logicielles de meilleure qualité grâce à un
niveau d'abstraction plus élevé.
Inconvénients des design
patterns
La nécessité d’un effort de synthèse conséquent
: reconnaitre, abstraire, etc.
La nécessite d’un apprentissage et d’expériences
Le nombre de patterns à apprendre : les patrons
de conceptions sont nombreux (23 dans
l'ouvrage du GOF et d'autres sont publiés
régulièrement)
Des patrons qui se ressemblent.
Des patrons qui s’appuient sur d’autres.
Origine
Les DP tirent leur origine des travaux de
l’architecte Christopher A dans les années 70
Les DP ont été formalisés pour la première
fois en 1995 dans le livre du « Gang of Four »
(GoF)
GoF : Erich Gamma, Richard Helm,
Ralph Johnson et John Vlissides, «
Design Patterns - Elements of Reusable
Object-Oriented Software »
Constitution d’un design pattern
Un patron de conception est défini par :
Un Contexte : une situation qui engendre le
problème
Un Problème : le problème récurrent qui
apparait dans ce contexte
Une Solution : une résolution validée du
problème
Description des Design Patterns
On documente un pattern de conception en donnant
les éléments suivants :
le nom : le nom du pattern
la description (son intention): courte description
du pattern, sa raison d’être, description des
conditions d'applications. Explication du
problème à résoudre et son contexte. En d’autre
terme, que fait-il et quel problème résout-il ?
Description des Design Patterns

Un exemple (motivation) : décrire un problème


et la solution basée sur le pattern, décrit sous
la forme d'un diagramme de classe UML, c'est
à dire montrer un cas particulier dans lequel
le pattern peut être utilisé.
Catégories de Patrons de conception
La classification du « GoF » organise les patterns
selon leur vocation :
Les patrons de construction ou de création :
ont pour but d’organiser la création des
objets. On en distingue 5 : Abstract Factory,
Builder, Factory Methode, Prototype et
Singleton.
Catégories de Patrons de conception
Les patrons de structuration : facilitent l’organisation de la
hiérarchie des classes et leurs relations. Ils sont au nombre de
7 : Adapter, Bridge, Composite, Decorator, Facade, Flyweight, et
proxy.
Les patrons de comportement : proposent des solutions
pour organiser les interactions et pour répartir les
traitements entre les objets. Ils sont au nombre de 11 :
Chain of responsability, Command, Interpreter, Iterator,
Mediator, Memento, Observer, State, Strategy, Template
Method et Visitor.
Ouvrages recommandés
Software Architecture in Practice, 3e édition, Len Bass, Paul
Clements et Rick Kazman, Addison-Wesley, 2012.
“Design Patterns - Elements of Reusable Object-Oriented
Software”,Erich Gamma, Richard Helm, Ralph Johnson,
John Vlissides
POSA 1 - “Pattern-Oriented Software Architecture – A
System of Patterns”, Vol. 1, Frank Buschmann, Regine
Meunier, Hans Rohnert,Peter Sommerland, Michael Stal

Vous aimerez peut-être aussi