SlideShare une entreprise Scribd logo
Exposé Génie Logiciel Présenté par :   BOUZAKHER Bilel ELLOUMI Ahmed NEFZI Achref HAMROUNI khaled 2010
La solution proposer par l’ORM Différences entre le modèle relationnel et le modèle objet Exemple de l’utilisation d’ORM Conclusion Introduction Correspondances entre l’objet et le modèle relationnel
Introduction ,[object Object],[object Object],[object Object],Problématique ,[object Object],[object Object],[object Object]
Différences entre  modèle relationnel et modèle objet ,[object Object],[object Object],[object Object]
Différences entre  modèle relationnel et modèle objet - Structurel Modele objet Modele relationnel Organisation données Forme d’un graphe d’objets (ensembles d’attributs) Forme matricielle (lignes-colonnes) Héritage Oui Non Type donnés String, integer… Varchar, number.. Liens entre entités pointeurs Clés etrangeres
Différences entre  modèle relationnel et modèle objet - Comportement Modèle objet Modèle relationnel Identité objet Unicité des objets en fonction de l’unicité des pointeurs Unicité des tuples en fonction de l’unicité des clés primaires Persistance ne couvre pas réellement la problématique de la persistance des objets les données sont persistantes : une fois le schéma relationnel défini, les données ajoutées restent accessibles durablement.
La solution ORM ,[object Object],ORM Object Relationnel
La solution ORM ,[object Object],[object Object]
Application Classique
Le cas avec ORM
Correspondances entre  le modèle objet et le modèle relationnel ,[object Object],Modèle Objet Modèle relationnel Modèle Objet Modèle relationnel Classe utilisateurs cp ID Nom MotPasse Utilisateur Nom  : String MotPasse  : String
[object Object],Correspondances entre  le modèle objet et le modèle relationnel Héritage dessin CP ID Type X Y Diamètre size dessin X : int Y : int rectangle Size : int cercle Diamètre : int
[object Object],[object Object],Correspondances entre  le modèle objet et le modèle relationnel Modèle Objet Modèle relationnel Relation 1-1 Adreese1 Utilisateur1 Utilisateur2 Adresse2 Utilisateurs CP ID CE1 FK_Adresse Nom MotPasse
[object Object],Correspondances entre  le modèle objet et le modèle relationnel Relation 1-* Utilisateur1 adresse1 adresse2 adresse3 Adresses CP ID CE1 FK_utilisateur Date
Exemple de l’utilisation de l’ORM Les Frameworks ORM est utilisable pour tout langage Orientée Objet qui manipule des données relationnelle ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Exemple de l’utilisation de l’ORM PHP un Framework de mapping objet-relationnel (ORM) écrit en PHP 5  PdoMap   facilement définir la structure de bases de données et de les manipuler sans avoir besoin d'écrire du code PHP ou bien des requêtes SQL. Notre But :
Exemple de l’utilisation de l’ORM 3 - Création de Map 1 - Inclure  pdoMap require_once('lib/pdomap.php'); 2 - Configuration
Exemple de l’utilisation de l’ORM Les Fonctions du base Créer des objets Modifier des objets Mise a jour de la base de données Supprimer des enregistrements de la base de données DEMO
Conclusion ,[object Object],La structure de bases Les services et les requêtes ,[object Object],De migrer d’un moteur de donnée a un autre ,[object Object]
ORM

Contenu connexe

Tendances

OOPS In JAVA.pptx
OOPS In JAVA.pptxOOPS In JAVA.pptx
OOPS In JAVA.pptx
Sachin33417
 
Django Forms: Best Practices, Tips, Tricks
Django Forms: Best Practices, Tips, TricksDjango Forms: Best Practices, Tips, Tricks
Django Forms: Best Practices, Tips, Tricks
Shawn Rider
 
검색엔진이 데이터를 다루는 법 김종민
검색엔진이 데이터를 다루는 법 김종민검색엔진이 데이터를 다루는 법 김종민
검색엔진이 데이터를 다루는 법 김종민
종민 김
 
Introdução à Programação Python e Tk
Introdução à Programação Python e TkIntrodução à Programação Python e Tk
Introdução à Programação Python e Tk
Carlos Campani
 
Oops concepts || Object Oriented Programming Concepts in Java
Oops concepts || Object Oriented Programming Concepts in JavaOops concepts || Object Oriented Programming Concepts in Java
Oops concepts || Object Oriented Programming Concepts in Java
Madishetty Prathibha
 
Java collections concept
Java collections conceptJava collections concept
Java collections concept
kumar gaurav
 
Introduction à ajax
Introduction à ajaxIntroduction à ajax
Introduction à ajax
Abdoulaye Dieng
 
Les Streams de Java 8
Les Streams de Java 8Les Streams de Java 8
Les Streams de Java 8
Antoine Rey
 
ReactJS presentation
ReactJS presentationReactJS presentation
ReactJS presentation
Thanh Tuong
 
An Introduction to ReactJS
An Introduction to ReactJSAn Introduction to ReactJS
An Introduction to ReactJS
All Things Open
 
Hands-On Java web passando por Servlets, JSP, JSTL, JDBC, Hibernate, DAO, MV...
Hands-On Java web passando por  Servlets, JSP, JSTL, JDBC, Hibernate, DAO, MV...Hands-On Java web passando por  Servlets, JSP, JSTL, JDBC, Hibernate, DAO, MV...
Hands-On Java web passando por Servlets, JSP, JSTL, JDBC, Hibernate, DAO, MV...
Mario Jorge Pereira
 
Effective Java - Enum and Annotations
Effective Java - Enum and AnnotationsEffective Java - Enum and Annotations
Effective Java - Enum and Annotations
Roshan Deniyage
 
Nodejs
NodejsNodejs
Nodejs
Prem Sanil
 
React workshop
React workshopReact workshop
React workshop
Imran Sayed
 
ASP.NET Web API
ASP.NET Web APIASP.NET Web API
ASP.NET Web API
habib_786
 
Introduction à JPA (Java Persistence API )
Introduction à JPA  (Java Persistence API )Introduction à JPA  (Java Persistence API )
Introduction à JPA (Java Persistence API )
Daniel Rene FOUOMENE PEWO
 
Aprendendo a Usar o Netbeans
Aprendendo a Usar o NetbeansAprendendo a Usar o Netbeans
Aprendendo a Usar o Netbeans
Tiago Antônio da Silva
 
Php File Operations
Php File OperationsPhp File Operations
Php File Operations
Jamshid Hashimi
 
java Servlet technology
java Servlet technologyjava Servlet technology
java Servlet technology
Tanmoy Barman
 
Web api crud operations
Web api crud operationsWeb api crud operations
Web api crud operations
Eyal Vardi
 

Tendances (20)

OOPS In JAVA.pptx
OOPS In JAVA.pptxOOPS In JAVA.pptx
OOPS In JAVA.pptx
 
Django Forms: Best Practices, Tips, Tricks
Django Forms: Best Practices, Tips, TricksDjango Forms: Best Practices, Tips, Tricks
Django Forms: Best Practices, Tips, Tricks
 
검색엔진이 데이터를 다루는 법 김종민
검색엔진이 데이터를 다루는 법 김종민검색엔진이 데이터를 다루는 법 김종민
검색엔진이 데이터를 다루는 법 김종민
 
Introdução à Programação Python e Tk
Introdução à Programação Python e TkIntrodução à Programação Python e Tk
Introdução à Programação Python e Tk
 
Oops concepts || Object Oriented Programming Concepts in Java
Oops concepts || Object Oriented Programming Concepts in JavaOops concepts || Object Oriented Programming Concepts in Java
Oops concepts || Object Oriented Programming Concepts in Java
 
Java collections concept
Java collections conceptJava collections concept
Java collections concept
 
Introduction à ajax
Introduction à ajaxIntroduction à ajax
Introduction à ajax
 
Les Streams de Java 8
Les Streams de Java 8Les Streams de Java 8
Les Streams de Java 8
 
ReactJS presentation
ReactJS presentationReactJS presentation
ReactJS presentation
 
An Introduction to ReactJS
An Introduction to ReactJSAn Introduction to ReactJS
An Introduction to ReactJS
 
Hands-On Java web passando por Servlets, JSP, JSTL, JDBC, Hibernate, DAO, MV...
Hands-On Java web passando por  Servlets, JSP, JSTL, JDBC, Hibernate, DAO, MV...Hands-On Java web passando por  Servlets, JSP, JSTL, JDBC, Hibernate, DAO, MV...
Hands-On Java web passando por Servlets, JSP, JSTL, JDBC, Hibernate, DAO, MV...
 
Effective Java - Enum and Annotations
Effective Java - Enum and AnnotationsEffective Java - Enum and Annotations
Effective Java - Enum and Annotations
 
Nodejs
NodejsNodejs
Nodejs
 
React workshop
React workshopReact workshop
React workshop
 
ASP.NET Web API
ASP.NET Web APIASP.NET Web API
ASP.NET Web API
 
Introduction à JPA (Java Persistence API )
Introduction à JPA  (Java Persistence API )Introduction à JPA  (Java Persistence API )
Introduction à JPA (Java Persistence API )
 
Aprendendo a Usar o Netbeans
Aprendendo a Usar o NetbeansAprendendo a Usar o Netbeans
Aprendendo a Usar o Netbeans
 
Php File Operations
Php File OperationsPhp File Operations
Php File Operations
 
java Servlet technology
java Servlet technologyjava Servlet technology
java Servlet technology
 
Web api crud operations
Web api crud operationsWeb api crud operations
Web api crud operations
 

En vedette

Ksikas
KsikasKsikas
Ksikas
ksikas
 
Profil Polyvalent
Profil PolyvalentProfil Polyvalent
Profil Polyvalent
desportraitsdemaitre
 
Recomendacion decathlon
Recomendacion decathlonRecomendacion decathlon
Recomendacion decathlon
Romagueraj
 
Cv stage-huleux-simon
Cv stage-huleux-simonCv stage-huleux-simon
Cv stage-huleux-simonThibault_hero
 
Cv espagnol
Cv espagnolCv espagnol
Cv fr 2015
Cv fr 2015Cv fr 2015
Cv fr 2015
Belinda BAGES
 
CV Christophe RAMEL
CV Christophe RAMELCV Christophe RAMEL
CV Christophe RAMELHappybox
 
Bases de données NoSQL
Bases de données NoSQLBases de données NoSQL
Bases de données NoSQL
Samy Dindane
 
Cv
CvCv
Cv - Harriet BODY copy 2
Cv - Harriet BODY copy 2Cv - Harriet BODY copy 2
Cv - Harriet BODY copy 2Harriet Body
 
Cv Israel Escalona
Cv Israel EscalonaCv Israel Escalona
Cv Israel Escalona
Israel Escalona de Anta
 
Cv mis à jour (2013)
Cv mis à jour (2013)Cv mis à jour (2013)
Cv mis à jour (2013)Gaëlle Delaye
 

En vedette (20)

CV Mouloud MOUSSAOUI 2015
CV Mouloud MOUSSAOUI 2015CV Mouloud MOUSSAOUI 2015
CV Mouloud MOUSSAOUI 2015
 
Ksikas
KsikasKsikas
Ksikas
 
CV_Barbora_Lajzova_FR
CV_Barbora_Lajzova_FRCV_Barbora_Lajzova_FR
CV_Barbora_Lajzova_FR
 
Allonge Nicolas CV
Allonge Nicolas CVAllonge Nicolas CV
Allonge Nicolas CV
 
Profil Polyvalent
Profil PolyvalentProfil Polyvalent
Profil Polyvalent
 
Recomendacion decathlon
Recomendacion decathlonRecomendacion decathlon
Recomendacion decathlon
 
Cv stage-huleux-simon
Cv stage-huleux-simonCv stage-huleux-simon
Cv stage-huleux-simon
 
Cv espagnol
Cv espagnolCv espagnol
Cv espagnol
 
Sql3
Sql3Sql3
Sql3
 
Cv fr 2015
Cv fr 2015Cv fr 2015
Cv fr 2015
 
CV Christophe RAMEL
CV Christophe RAMELCV Christophe RAMEL
CV Christophe RAMEL
 
Bases de données NoSQL
Bases de données NoSQLBases de données NoSQL
Bases de données NoSQL
 
Cv 2012
Cv 2012Cv 2012
Cv 2012
 
Cv
CvCv
Cv
 
Demande de stage
Demande de stageDemande de stage
Demande de stage
 
Professeur de FLE cv en francaispdf
Professeur de FLE cv en francaispdfProfesseur de FLE cv en francaispdf
Professeur de FLE cv en francaispdf
 
Cv - Harriet BODY copy 2
Cv - Harriet BODY copy 2Cv - Harriet BODY copy 2
Cv - Harriet BODY copy 2
 
Cv Israel Escalona
Cv Israel EscalonaCv Israel Escalona
Cv Israel Escalona
 
Cv mis à jour (2013)
Cv mis à jour (2013)Cv mis à jour (2013)
Cv mis à jour (2013)
 
Cv Graciela Sánchez Pellegrinelli
Cv Graciela Sánchez PellegrinelliCv Graciela Sánchez Pellegrinelli
Cv Graciela Sánchez Pellegrinelli
 

Similaire à ORM

Entity_framework_db first
Entity_framework_db firstEntity_framework_db first
Entity_framework_db first
Zineb ELGARRAI
 
7. information modelling
7. information modelling7. information modelling
7. information modelling
sugogo
 
Presentation dublincore l3
Presentation dublincore l3Presentation dublincore l3
Presentation dublincore l3DublinCore2b
 
Environnements & Développements
Environnements & DéveloppementsEnvironnements & Développements
Environnements & DéveloppementsPaulin CHOUDJA
 
Metadonnees et SID
Metadonnees et SIDMetadonnees et SID
Metadonnees et SID
Sylvie Dalbin
 
Cours partie1 elgarrai zineb
Cours partie1 elgarrai zinebCours partie1 elgarrai zineb
Cours partie1 elgarrai zineb
Zineb ELGARRAI
 
U M L Analyse Et Conception Objet
U M L Analyse Et Conception ObjetU M L Analyse Et Conception Objet
U M L Analyse Et Conception ObjetAmine Chkr
 
Uml
UmlUml
Formation PHP avancé - Cake PHP
Formation PHP avancé - Cake PHPFormation PHP avancé - Cake PHP
Formation PHP avancé - Cake PHP
kemenaran
 
Introduction au Domain Driven Design
Introduction au Domain Driven DesignIntroduction au Domain Driven Design
Introduction au Domain Driven Design
DNG Consulting
 
Single Page Application
Single Page ApplicationSingle Page Application
Single Page Application
Cherif Bouchelaghem
 
Adopte une BDD
Adopte une BDDAdopte une BDD
Adopte une BDD
Aymeric Brisse
 
Modèles de données et langages de description ouverts 5 - 2021-2022
Modèles de données et langages de description ouverts   5 - 2021-2022Modèles de données et langages de description ouverts   5 - 2021-2022
Modèles de données et langages de description ouverts 5 - 2021-2022
François-Xavier Boffy
 
interopérabilité en informatique
interopérabilité en informatiqueinteropérabilité en informatique
interopérabilité en informatique
catherine roussey
 
ADO_NET_complet.pdf
ADO_NET_complet.pdfADO_NET_complet.pdf
ADO_NET_complet.pdf
mostafaoujeddi1
 
SQL Server et les développeurs
SQL Server et les développeurs SQL Server et les développeurs
SQL Server et les développeurs
Microsoft
 
Syntaxe concrète des DSL en IDM [avec Xtext]
Syntaxe concrète des DSL en IDM [avec Xtext]Syntaxe concrète des DSL en IDM [avec Xtext]
Syntaxe concrète des DSL en IDM [avec Xtext]
Olivier Le Goaër
 
A Brief History of Database Management (SQL, NoSQL, NewSQL)
A Brief History of Database Management (SQL, NoSQL, NewSQL)A Brief History of Database Management (SQL, NoSQL, NewSQL)
A Brief History of Database Management (SQL, NoSQL, NewSQL)
Abdelkader OUARED
 
Cours de C++, en français, 2002 - Cours 3.3
Cours de C++, en français, 2002 - Cours 3.3Cours de C++, en français, 2002 - Cours 3.3
Cours de C++, en français, 2002 - Cours 3.3
Laurent BUNIET
 
La persistance des données : ORM et hibernate
La persistance des données : ORM et hibernateLa persistance des données : ORM et hibernate
La persistance des données : ORM et hibernate
Youness Boukouchi
 

Similaire à ORM (20)

Entity_framework_db first
Entity_framework_db firstEntity_framework_db first
Entity_framework_db first
 
7. information modelling
7. information modelling7. information modelling
7. information modelling
 
Presentation dublincore l3
Presentation dublincore l3Presentation dublincore l3
Presentation dublincore l3
 
Environnements & Développements
Environnements & DéveloppementsEnvironnements & Développements
Environnements & Développements
 
Metadonnees et SID
Metadonnees et SIDMetadonnees et SID
Metadonnees et SID
 
Cours partie1 elgarrai zineb
Cours partie1 elgarrai zinebCours partie1 elgarrai zineb
Cours partie1 elgarrai zineb
 
U M L Analyse Et Conception Objet
U M L Analyse Et Conception ObjetU M L Analyse Et Conception Objet
U M L Analyse Et Conception Objet
 
Uml
UmlUml
Uml
 
Formation PHP avancé - Cake PHP
Formation PHP avancé - Cake PHPFormation PHP avancé - Cake PHP
Formation PHP avancé - Cake PHP
 
Introduction au Domain Driven Design
Introduction au Domain Driven DesignIntroduction au Domain Driven Design
Introduction au Domain Driven Design
 
Single Page Application
Single Page ApplicationSingle Page Application
Single Page Application
 
Adopte une BDD
Adopte une BDDAdopte une BDD
Adopte une BDD
 
Modèles de données et langages de description ouverts 5 - 2021-2022
Modèles de données et langages de description ouverts   5 - 2021-2022Modèles de données et langages de description ouverts   5 - 2021-2022
Modèles de données et langages de description ouverts 5 - 2021-2022
 
interopérabilité en informatique
interopérabilité en informatiqueinteropérabilité en informatique
interopérabilité en informatique
 
ADO_NET_complet.pdf
ADO_NET_complet.pdfADO_NET_complet.pdf
ADO_NET_complet.pdf
 
SQL Server et les développeurs
SQL Server et les développeurs SQL Server et les développeurs
SQL Server et les développeurs
 
Syntaxe concrète des DSL en IDM [avec Xtext]
Syntaxe concrète des DSL en IDM [avec Xtext]Syntaxe concrète des DSL en IDM [avec Xtext]
Syntaxe concrète des DSL en IDM [avec Xtext]
 
A Brief History of Database Management (SQL, NoSQL, NewSQL)
A Brief History of Database Management (SQL, NoSQL, NewSQL)A Brief History of Database Management (SQL, NoSQL, NewSQL)
A Brief History of Database Management (SQL, NoSQL, NewSQL)
 
Cours de C++, en français, 2002 - Cours 3.3
Cours de C++, en français, 2002 - Cours 3.3Cours de C++, en français, 2002 - Cours 3.3
Cours de C++, en français, 2002 - Cours 3.3
 
La persistance des données : ORM et hibernate
La persistance des données : ORM et hibernateLa persistance des données : ORM et hibernate
La persistance des données : ORM et hibernate
 

ORM

  • 1. Exposé Génie Logiciel Présenté par : BOUZAKHER Bilel ELLOUMI Ahmed NEFZI Achref HAMROUNI khaled 2010
  • 2. La solution proposer par l’ORM Différences entre le modèle relationnel et le modèle objet Exemple de l’utilisation d’ORM Conclusion Introduction Correspondances entre l’objet et le modèle relationnel
  • 3.
  • 4.
  • 5. Différences entre modèle relationnel et modèle objet - Structurel Modele objet Modele relationnel Organisation données Forme d’un graphe d’objets (ensembles d’attributs) Forme matricielle (lignes-colonnes) Héritage Oui Non Type donnés String, integer… Varchar, number.. Liens entre entités pointeurs Clés etrangeres
  • 6. Différences entre modèle relationnel et modèle objet - Comportement Modèle objet Modèle relationnel Identité objet Unicité des objets en fonction de l’unicité des pointeurs Unicité des tuples en fonction de l’unicité des clés primaires Persistance ne couvre pas réellement la problématique de la persistance des objets les données sont persistantes : une fois le schéma relationnel défini, les données ajoutées restent accessibles durablement.
  • 7.
  • 8.
  • 10. Le cas avec ORM
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16. Exemple de l’utilisation de l’ORM PHP un Framework de mapping objet-relationnel (ORM) écrit en PHP 5 PdoMap facilement définir la structure de bases de données et de les manipuler sans avoir besoin d'écrire du code PHP ou bien des requêtes SQL. Notre But :
  • 17. Exemple de l’utilisation de l’ORM 3 - Création de Map 1 - Inclure pdoMap require_once('lib/pdomap.php'); 2 - Configuration
  • 18. Exemple de l’utilisation de l’ORM Les Fonctions du base Créer des objets Modifier des objets Mise a jour de la base de données Supprimer des enregistrements de la base de données DEMO
  • 19.