Théorie 2.2: graphe d’objets #
-
Un modèle Java contient des références
- Un
Personnage
apparaît dans plusieursFilm
- Un
Film
contient plusieursPersonnage
- Un
-
Très souvent, ces références forment des boucles
- Le
Personnage
James Bond apparaît dans deux films: Dr. No et Bon Baisers de Russie - Le
Film
Dr. No contient deux personnages: James Bond et Dr. no
- Le
-
On parle alors de graphe d’objets (plutôt que de tableau d’objets)
Graphe d’objets en JSON #
-
JSON n’a pas de notion de référence
-
Dans ce cours, on ajoute un objet spécial
{"_R":"/chemin/vers/objet/cible"}
pour représenter certaines références- (sans l’objet spécial, on ne peut pas représenter les boucles)
-
Par exemple, le graphe ci-haut est représenté comme suit en JSON
{
"_C": "DrNo",
"titre": "Dr. No",
"personnages": [
{
"_C": "Personnage",
"films": [
{
"_R": "/"
},
{
"_C": "Film",
"titre": "Bons Baisers de Russie",
"personnages": [
{
"_R": "/personnages/0"
},
{
"_C": "Personnage",
"films": [
{
"_R": "/personnages/0/films/1"
}
],
"nom": "Rosa Klebb"
}
]
}
],
"nom": "James Bond"
},
{
"_C": "Personnage",
"films": [
{
"_R": "/"
}
],
"nom": "Docteur No"
}
]
NOTE:
- on ne va pas vous demander d’écrire du JSON avec l’objet spécial
{"_R":"/chemin/cible"}
- il vous faut uniquement comprendre que ça existe
- et comprendre la notion de graphe d’objets en POO