Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente | |||
| sio:bloc2:orm [2024/09/03 11:07] – supprimée - modification externe (Date inconnue) 127.0.0.1 | sio:bloc2:orm [2024/09/03 11:07] (Version actuelle) – ↷ Page déplacée de slam4:orm à sio:bloc2:orm jcheron | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| + | ====== Mapping relationnel/ | ||
| + | Quelque soit l' | ||
| + | elle est primordiale, | ||
| + | La place croissante prise par les développements Objet, y compris dans le monde du Web, a favorisé l' | ||
| + | Celle des frameworks de persistance, | ||
| + | |||
| + | **ORM** signifie **O**bject **R**elational **M**apper\\ | ||
| + | |||
| + | Le mappage Relationnel/ | ||
| + | - la distinction structurelle entre un objet et un enregistrement/ | ||
| + | - la notion fondamentale de clé dans le monde relationnel, | ||
| + | - la différence entre les liens : des relations basées sur l' | ||
| + | - la notion de navigation, forte en objet et inconnue en relationnel. | ||
| + | |||
| + | Les ORM proposent des solutions pour réunir ces 2 mondes et ces 2 paradigmes. | ||
| + | Ils permettent : | ||
| + | - De définir les règles de mappage entre une base de données et un modèle objet | ||
| + | - De charger un enregistrement depuis la BDD pour en faire une instance de classe | ||
| + | - De charger un ensemble d' | ||
| + | - De sauvegarder un objet dans la BDD sous forme d' | ||
| + | - De sauvegarder un ensemble d' | ||
| + | - De traduire les relations entre tables sous forme de liens entre classes d' | ||
| + | * pour permettre de charger depuis la base un graphe d' | ||
| + | * pour permettre de mettre à jour dans la base de données ce graphe d' | ||
| + | |||
| + | ===== Design patterns ===== | ||
| + | Il existe 2 familles d'ORM, basées sur 2 patrons de conception différents : | ||
| + | * Active Record | ||
| + | * DataMapper | ||