Outils pour utilisateurs

Outils du site


informatique:design_pattern

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
Prochaine révisionLes deux révisions suivantes
informatique:design_pattern [05/09/2010 17:32] cyrilleinformatique:design_pattern [05/09/2010 17:43] cyrille
Ligne 207: Ligne 207:
  
 {{:informatique:design_pattern:designpatterncreationalfactorymethod.png|}} {{:informatique:design_pattern:designpatterncreationalfactorymethod.png|}}
 +
 +
 +==== Singleton ====
 +
 +  * Restreindre le nombre d'instances d'une classe à une et une seule.
 +  * Fournir une méthode pour accéder à cette instance unique.
 +
 +Singleton doit restreindre le nombre de ses propres instances à une et une seule. Son constructeur est privé : cela empêche les autres classes de l'instancier. La classe fournit la méthode statique getInstance() qui permet d'obtenir l'instance unique. 
 +
 +Le singleton est souvent vu comme un anti-pattern...
 +
 +http://www.picocontainer.org/singleton-antipattern.html
 +
 +The singleton pattern was described in the GoF Design Patterns  book. Because of its static nature and global availability, it allows component writers to obscurely reference other components. Overuse makes for bad solutions. Overuse at the enterprise level, it makes for very bad solutions.
 +
 +We claim that the GoF Singleton pattern is, in fact, quite often an anti-pattern. The downside of the singleton is that there are many transitive dependancies that are not easy to spot. Singletons cannot easily be replaced with Mock Objects for the sake of easy unit testing.
 +
 +Voir:
 +  * [[http://rpouiller.developpez.com/tutoriel/java/design-patterns-gang-of-four/?page=page_2#LIV-E|Le singleton par Régis POUILLER]]
 +  * [[http://smeric.developpez.com/java/uml/singleton/|Le singleton par Sébastien MERIC]]
  
 ====Strategy ==== ====Strategy ====
Ligne 287: Ligne 307:
  
 Synonymes: Encapsulateur, Empaquetage. Synonymes: Encapsulateur, Empaquetage.
 +
 +L'Adapteur permet d'isoler l'adaptation d'un sous-système. 
  
   * Convertir l'interface d'une classe dans une autre interface comprise par la partie cliente.   * Convertir l'interface d'une classe dans une autre interface comprise par la partie cliente.
Ligne 295: Ligne 317:
 {{:informatique:design_pattern:adaptateur.png|}} {{:informatique:design_pattern:adaptateur.png|}}
  
-Adaptateur avec héritage : +Adaptateur avec héritage: \\
 {{:informatique:design_pattern:designpatternstructuraladaptatorheritage.png|design pattern structural adaptator heritage}} {{:informatique:design_pattern:designpatternstructuraladaptatorheritage.png|design pattern structural adaptator heritage}}
  
-Adaptateur avec composition : +Adaptateur avec composition: \\
 {{:informatique:design_pattern:designpatternstructuraladaptatorcomposition.png|design pattern structural adaptator composition}} {{:informatique:design_pattern:designpatternstructuraladaptatorcomposition.png|design pattern structural adaptator composition}}
  
 +Voir:
 +  * [[http://smeric.developpez.com/java/uml/adaptateur/|L'adaptateur par Sébastien MERIC]]
 +  * [[http://rpouiller.developpez.com/tutoriel/java/design-patterns-gang-of-four/?page=page_3#LV-A|L'adapteur par Régis POUILLER]]
  
 ==== Gateway ==== ==== Gateway ====
Ligne 323: Ligne 348:
  
 ==== Value Object ==== ==== Value Object ====
-==== Money ==== + 
-==== Special Case ====+ 
 + 
 ==== Plugin ==== ==== Plugin ====
  
informatique/design_pattern.txt · Dernière modification : 03/03/2023 14:56 de cyrille

Sauf mention contraire, le contenu de ce wiki est placé sous les termes de la licence suivante : CC0 1.0 Universal
CC0 1.0 Universal Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki