Utilisation des patterns.






En préalable, une petite révision de la notation UML

Et de bons conseils (de Brian Foote et W.F.Opdyke) en re-factoring patterns

  1. Canevas de base:

    Ce sont les canevas de la bande des quatre, dont le livre est la référence obligatoire en introduction.
    Ces canevas sont documentés dans

    1. Canevas (design patterns) en U.M.L.
      pour la partie U.M.L. graphique,
    2. Canevas (design patterns) en C++
    3. Canevas (design patterns) en C++
      (en cas de besoin seulement)
    4. Canevas (design patterns) en Java
      (en cas de besoin seulement)
    Voici un Résumé des canevas (design pattern) de base.


    Une excellente paraphrase de ces modèles fondamentaux, ainsi qu'une version Java est donnée dans
    The Design Patterns Java Companion.
    Consulter aussi la formulation (en francais) dans
    canevas (design patterns) fondamentaux


    1. Canevas de structure:

      Voir Canevas (design patterns) de structure en Java
      1. Adaptateur.
      2. Pont.
      3. Composite.
      4. Décorateur.
      5. Facade.
      6. PoidsMouche.
      7. Procuration.

    2. Canevas de comportement:

      Voir Canevas (design pattern) de comportement en Java
      1. ChaîneDeResponsabilité.
      2. Commande.
      3. Interpréteur.
      4. Itérateur.
      5. Médiateur.
      6. Mémento.
      7. Observateur.
      8. Etat.
      9. Stratégie.
      10. PatronDeMéthode.
      11. Visiteur.

    3. Canevas de création:

      Voir Canevas (design pattern) de création en Java
      1. Fabrique abstraite.
      2. Monteur.
      3. Fabrication.
      4. Prototype.
      5. Singleton.

  2. EJB Design Patterns or: EJB Design Patterns

    (read-only, code disponible)
      1. EJB Layer Architectural Patterns
      2. Session Facade
      3. Message Facade
      4. EJB Command
      5. Data Transfer Object Factory
      6. Generic Attribute Access
      7. Business Interface
      1. Inter-Tier Data Transfer Patterns
      2. Data Transfer Object
      3. Domain Data Transfer Object
      4. Custom Data Transfer Object
      5. Data Transfer HashMap
      6. Data Transfer RowSet
      1. Transaction and Persistence Patterns
      2. Version Number
      3. JDBC for Reading
      4. Data Access Command Bean
      5. Dual Persistent Entity Bean
      1. Client-Side EJB Interaction Patterns
      2. EJBHomeFactory
      3. Business Delegate
      1. Primary Key Generation Strategies
      2. Sequence Blocks
      3. UUID for EJB
      4. Stored Procedures for Autogenerated Keys

  3. Canevas liés à J2EE:

    Cf canevas (design pattern) J2EE

  4. LE COIN DE PECHE "I.B.M.":


    1. ibm e-business patterns
    2. ibm e-business patterns
    3. ibm e-business patterns map


  5. Canevas liés à la répartition:

    Cf canevas (design pattern) pour la répartition

    1. Canevas pour l'architecture 3/3

      1. Architecture3/3
      2. ApplicationServerPartitioning
      3. AbstractDatabaseInterface
      4. ORBProxyForDatabaseObject
      5. AutomaticObjectLocks
      6. SharedDBConnections
      7. ThreadBasedConcurrencyManagement

    2. LocalSerialization

  6. Canevas liés à la persistence:

  7. Canevas liés à l'architecture en couches:

    De plus en plus on espère voir arriver des objets déja programmés et réutilisables. C'est déja fait pour les composants graphiques, cela commence pour les objets métiers. Une classification possible tournerait autour de:

    1. Interface.
    2. Interaction.
    3. DialogueProcessor.
    4. Usage.
    5. Model.
    6. PersistenceAccess

  8. Canevas liés à la sécurité:

    Le problème de la sécurité ne se résoud pas uniquement par les patterns, mais ceux-ci y contribuent bien !
    design pattern pour la sécurité
    (cf Yoder et Barcalow in PLoP'97)

    1. SingleAccessPoint.
    2. CheckPoint.
    3. Roles.
    4. Session.
    5. FullViewWithErrors.
    6. LimitedView.
    7. SecureAccessLayer.

  9. Canevas liés aux applications de simulation:

    Cf Towards a Family of Pattern Languages for Simulation Software Design
    Wolfgang Kreutzer, Dpt of Computer Science University of Canterbury, Christchurch ...

    1. 2 viewpoints of model design.
      1. Machine-oriented synchronization in discrete event models.
      2. Material-oriented synchronization in discrete event models.
    2. Data collection in open scenarios.
      1. Observe & record flowtimes of transient workload items.
    3. Workload creation in open scenarios.
      1. Source-driven workload creation.
      2. Each workload item creates its own successor.
    4. Synchronization of processes in discrete event models.
      1. Producer-consumer pattern for process synchronization.
      2. Master-slave synchronization of processes.
      3. Using condition queues for process synchronization.
      4. Customer/resource synchronization of processes.
    5. Event-Oriented time management in discrete event simulations.

  10. Canevas liés aux applications temps-réel:

    Cf catalogue de canevas (design pattern) temps-réel

    1. RecursiveControl.
    2. ThreadSpecificStorage.


  11. Canevas liés aux applications hypermédia:

    canevas (design pattern) hypermedia Page de Daniel Schwabe.
    1. NavigationalContext
    2. InformationOnDemand

  12. Canevas liés à AJAX:

    Patterns Ajax


  13. Canevas pour la création de canevas:

    Pattern language for Pattern writing (Meszaros & Doble)


  14. Workflow pattern


  15. Un coin de pêche:

    Patterns reperés par Brad Appleton.


  16. X.M.L. - X.S.L.:

    1. XML Design Patterns
    2. XML Design Patterns
    3. XML Design Patterns
    4. XML Design Patterns
    5. XML Design Pattern Acceptor
    6. XSL Design Pattern
    7. XSL Open Forum

  17. Web-bibliographie complémentaire:

    VRAC EN COURS DE CLASSEMENT:

    1. Fowler design patterns
    2. Design Patterns and Java
    3. Design Patterns and Java
    4. MDA Model_driven_development patterns



B. M. G.
bg@eisti.fr