principes de persistance dans les applications orienté objet

19
PRINCIPES DE PERSISTANCE DANS LES APPLICATIONS ORIENTÉ OBJET Travail Étude et Recherche POISSONNIER Jean-Marie LAFFONT Benjamin TORGUET Patrice Étudiants : 1 Encadrant : Principes de persistance - POISSONNIER Jean-Marie et LAFFONT Benjamin

Upload: beau

Post on 23-Feb-2016

33 views

Category:

Documents


0 download

DESCRIPTION

Encadrant :. POISSONNIER Jean-Marie LAFFONT Benjamin TORGUET Patrice. É tudiants :. Travail Étude et Recherche. Principes de persistance dans les applications orienté objet. Sommaire. Introduction Mapping Implémentation Schéma Problèmes Exemple Persistance Méthodes - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Principes de persistance dans les applications orienté objet

PRINCIPES DE PERSISTANCE DANS LES APPLICATIONS ORIENTÉ

OBJET

Travail Étude et Recherche

POISSONNIER Jean-MarieLAFFONT Benjamin

TORGUET Patrice

Étudiants :

1

Encadrant :

Principes de persistance - POISSONNIER Jean-Marie et LAFFONT Benjamin

Page 2: Principes de persistance dans les applications orienté objet

SOMMAIRE Introduction Mapping

ImplémentationSchémaProblèmesExemple

PersistanceMéthodesPoints négatifs

Frameworks disponibles Conclusion

2Principes de persistance - POISSONNIER Jean-Marie et LAFFONT Benjamin

Page 3: Principes de persistance dans les applications orienté objet

INTRODUCTION Principe de la persistance

3Principes de persistance - POISSONNIER Jean-Marie et LAFFONT Benjamin

Page 4: Principes de persistance dans les applications orienté objet

MAPPING : IMPLÉMENTATION

Description du problèmeLien modèle objet ↔ modèle relationnel

Modèle objet○ Identité, État, Comportement, Encapsulation

Modèle relationnel○ Relation (table), N-uplets (lignes), Attributs (colonnes)

4Principes de persistance - POISSONNIER Jean-Marie et LAFFONT Benjamin

Page 5: Principes de persistance dans les applications orienté objet

MAPPING : SCHÉMA DE FONCTIONNEMENT

5Principes de persistance - POISSONNIER Jean-Marie et LAFFONT Benjamin

Page 6: Principes de persistance dans les applications orienté objet

6Principes de persistance - POISSONNIER Jean-Marie et LAFFONT Benjamin

Difficultés d’implémentationEncapsulationTypes de donnéesTransactionManipulation des donnéesDifférences de structure et d’intégrité

MAPPING : PROBLÈMES (1/2)

Page 7: Principes de persistance dans les applications orienté objet

MAPPING : PROBLÈMES (2/2)

Différences de structure et d’intégrité

7Principes de persistance - POISSONNIER Jean-Marie et LAFFONT Benjamin

Page 8: Principes de persistance dans les applications orienté objet

MAPPING : ARBRE D’HÉRITAGE DE CLASSE Diagramme de classe

8Principes de persistance - POISSONNIER Jean-Marie et LAFFONT Benjamin

Page 9: Principes de persistance dans les applications orienté objet

MAPPING : ARBRE D’HÉRITAGE DE CLASSE Mapping vertical

9Principes de persistance - POISSONNIER Jean-Marie et LAFFONT Benjamin

Page 10: Principes de persistance dans les applications orienté objet

MAPPING : ARBRE D’HÉRITAGE DE CLASSE Mapping horizontal

10Principes de persistance - POISSONNIER Jean-Marie et LAFFONT Benjamin

Page 11: Principes de persistance dans les applications orienté objet

MAPPING : ARBRE D’HÉRITAGE DE CLASSE Mapping filtré

11Principes de persistance - POISSONNIER Jean-Marie et LAFFONT Benjamin

Page 12: Principes de persistance dans les applications orienté objet

PERSISTANCE : MÉTHODES (1/3)

Géré par le programmeCohérence mémoire – programme avec ou

sans cache et optimisationComptage des lignes des tablesExpiration des données

Géré par la baseSystème de triggerChamps supplémentaires (Date ou Heure)

12Principes de persistance - POISSONNIER Jean-Marie et LAFFONT Benjamin

Page 13: Principes de persistance dans les applications orienté objet

PERSISTANCE : MÉTHODES (2/3)

13

Géré par une tierce partieSystème de cache distribué (ex : JCache)

Principes de persistance - POISSONNIER Jean-Marie et LAFFONT Benjamin

Page 14: Principes de persistance dans les applications orienté objet

PERSISTANCE : POINTS NÉGATIFS (3/3)

Performance Non adaptable à tous les projets Contraintes sur l’écriture de code Tests supplémentaires Césure entre le relationnel et l’objet Pas de polymorphisme Pas de type-checker robuste

14Principes de persistance - POISSONNIER Jean-Marie et LAFFONT Benjamin

Page 15: Principes de persistance dans les applications orienté objet

FRAMEWORKS DISPONIBLES (1/3)

Hibernate – NhibernateJava et C#Permet de faire toutes les générations

relationnel – Objet○ Top-Down, Bottom-Up, Middle-Out, Meet in

the middleCompatible toute base de donnéeFacile à prendre en mainOpen source

15Principes de persistance - POISSONNIER Jean-Marie et LAFFONT Benjamin

Page 16: Principes de persistance dans les applications orienté objet

FRAMEWORKS DISPONIBLES (2/3)

IBatisJava et .NetProche du SQL et bonnes performancesOptimisé cache de requête Open sourceRapide à mettre en place

16Principes de persistance - POISSONNIER Jean-Marie et LAFFONT Benjamin

Page 17: Principes de persistance dans les applications orienté objet

FRAMEWORKS DISPONIBLES (3/3)

ToplinkJavaPlutôt adapté OracleMature, testé et supporté par OracleAdapté aux applications en clusterPropriétaireDemande une certaine maîtrise

17Principes de persistance - POISSONNIER Jean-Marie et LAFFONT Benjamin

Page 18: Principes de persistance dans les applications orienté objet

CONCLUSION Technologie jeune

HistoriqueTous les problèmes ne sont pas résolus

Multiples avantages

Choix difficile

18Principes de persistance - POISSONNIER Jean-Marie et LAFFONT Benjamin

Page 19: Principes de persistance dans les applications orienté objet

QUESTIONS

19

?Principes de persistance - POISSONNIER Jean-Marie et LAFFONT Benjamin