Outils du site

L'astronome peut vous parler de son entendement de l'espace. Il ne peut vous donner son entendement. Le musicien peut vous interpréter le rythme qui régit tout espace. Il ne peut vous donner l'ouïe qui capte le rythme, ni la voix qui lui fait écho. Celui qui est versé dans la science des nombres peut décrire les régions du poids et de la mesure. Il ne peut vous y emmener. Car la vision d'un être ne prète pas ses ailes à d'autres, De même que chacun de vous se tient seul dans la connaissance de Dieu, chacun de vous doit demeurer seul dans sa connaissance de Dieu et dans son entendement de la terre. [Khalil GIBRAN]

60-database:orm

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
60-database:orm [2020/01/09 00:21] – créée Roge60-database:orm [2020/01/09 01:47] (Version actuelle) – [ORM] Roge
Ligne 1: Ligne 1:
 ====== ORM ====== ====== ORM ======
  
-Object Relational Mapper+Object-Relational Mapping
  
 +//"Although this is usually referred to as object-relational mapping, **there is really nothing to do with objects here**."// Cf. Martin FOwler
 +===== Références =====
  
-===== Articles =====+//"A lot of people pick up an ORM because they don’t want to take the time to learn the underlying SQL (Structured Query Language)."// Cf. [[https://blog.logrocket.com/why-you-should-avoid-orms-with-examples-in-node-js-e0baab73fa5/ | Why you should avoid ORMs (with examples in Node.js)]]
  
 +//"The object/relational mapping problem is hard."// [[https://martinfowler.com/bliki/OrmHate.html | ORM Hate (Martin Fowler) ]]
  
-[[https://blog.logrocket.com/why-you-should-avoid-orms-with-examples-in-node-js-e0baab73fa5/ | Why you should avoid ORMs (with examples in Node.js)]]+//"Tables are not business objects! Tables aren’t objects at all. Tables are just data structures that the true business objects use as a resource."// [[https://blog.cleancoder.com/uncle-bob/2013/10/01/Dance-You-Imps.html | The Clean Code Blog 
 +by Robert C. Martin (Uncle Bob) ]] 
 + 
 +//"The Object-Relational Impedence Mismatch"// [[http://blogs.tedneward.com/post/the-vietnam-of-computer-science/ | The Vietnam of Computer Science (Ted Neward's Blog)]] 
 + 
 +===== Key concepts ===== 
 + 
 +==== underfetching ==== 
 + 
 +Une seule requête à la BD ne ramène pas toutes les données nécessaires 
 + 
 +Cas d'usage :  
 + 
 +  * Une seule requête ne permet pas de ramener toutes les données nécessaires car elle couvre plusieurs tables liées avec des restrictions complexes. 
 + 
 +==== overfetching ==== 
 + 
 +Une requête à la BD ramène plus de données que nécessaire. 
 + 
 +Cas d'usage :  
 + 
 +  * ''Select * from ....'' alors que seulement n attributs sont nécessaires 
 + 
 + 
 +===== Synthèse ===== 
 + 
 + 
 +Les ORM sont : 
 +  * complexes à mettre en oeuvre 
 +  * ne couvre pas l'ensemble des besoins
Dernière modification : 2020/01/09 00:21