YouTube2Text

2 4 GRAILS MODELISATION — Transcript

by DATUM ACADEMY · 959 words · 150 segments · language en · Watch on YouTube

Full transcript

  1. 0:00parlons maintenant de la modélisation
  2. 0:02commençons cette discussion sur la
  3. 0:05modélisation en parlant un petit peu
  4. 0:07d'héritage l'héritage est quelque chose
  5. 0:09que nous pratiquons régulièrement en
  6. 0:11tant que développeur java les
  7. 0:13développeurs java aime beaucoup l
  8. 0:15héritage mais nous sommes dans un
  9. 0:17environnement avec un om et les horaires
  10. 0:19m de base n'aime pas l'héritage de
  11. 0:23manière générale on va essayer autant
  12. 0:25que possible autant qu'il est
  13. 0:27raisonnable de le faire d'éviter de
  14. 0:30faire de l'héritage cependant vous devez
  15. 0:32être au courant de ce que va impliquer
  16. 0:34cet héritage au niveau de la persistance
  17. 0:37de vos données et c'est ce que nous
  18. 0:38allons voir dans cette partie par défaut
  19. 0:41lorsque l'on fait de l'héritage
  20. 0:43l'om va rassembler toutes les propriétés
  21. 0:46de toutes les classes qui hérite dans
  22. 0:48une même table et cela présente
  23. 0:51plusieurs inconvénients déjà d'une part
  24. 0:53nous allons nous retrouver avec une
  25. 0:54table qui va être assez conséquente en
  26. 0:57termes de taille d'autre part si on
  27. 0:59regarde l'exemple que je vous donne vous
  28. 1:02avez une classe user si vous avez une
  29. 1:04classe clients qui externe sueur et vous
  30. 1:06avez une classe prospère qui extends là
  31. 1:09aussi user ce qui veut dire que dans un
  32. 1:12cas normal nous allons nous retrouver
  33. 1:13avec une table user avec toutes les
  34. 1:17propriétés de toutes ses classes au delà
  35. 1:19du fait que cette table commence à être
  36. 1:21conséquente bon même s'il en est cela
  37. 1:24reste relativement raisonnable pour
  38. 1:25l'instant le problème que nous avons
  39. 1:27c'est que lorsque nous allons créer un
  40. 1:29client
  41. 1:31ce client n'aura pas de prospects cref
  42. 1:34par exemple
  43. 1:36ce qui veut dire que prospects cref sera
  44. 1:38forcément un nul lorsque l'on bat créé
  45. 1:42dans notre base de données un client de
  46. 1:45la même façon la kleienn bref sera
  47. 1:47défini annuler pour tous les prospects
  48. 1:49qui seront créés dans notre base de
  49. 1:51données le problème lié à ça c'est que
  50. 1:53vous vous en doutez nous n'avons
  51. 1:56absolument aucune possibilité de forcer
  52. 1:59un champ dans une table liée à un
  53. 2:03héritage annuler tous les chansons
  54. 2:06forcément nul et veulent
  55. 2:09sinon nous n'aurions pas la possibilité
  56. 2:11de créer un prospect ou un client
  57. 2:14cette contrainte relatives à l'aspect
  58. 2:17non nul le tout les champs dans une
  59. 2:19table qui est lié à de l'héritage
  60. 2:22peut-être un problème mais nous en
  61. 2:24discuterons un tout petit peu plus tard
  62. 2:26voyons comment la base de données se
  63. 2:28comporte lorsque nous avons deux les
  64. 2:30laitages et que nous créons quelques
  65. 2:32entités liées à cet héritage en exemple
  66. 2:35que vous voyez ci dessous je crée un
  67. 2:37user et si un client et un prospect ici
  68. 2:42dans la base de données on allons
  69. 2:45regarder ce qui s'y trouve je vais
  70. 2:46trouver les trois enregistrements
  71. 2:48correspondant aux trois instances que
  72. 2:50j'ai créé plus haut
  73. 2:53ici utilisateurs ici le client est ici
  74. 2:57le prospect vous voyez bien que les
  75. 2:59champs qui ne sont pas pertinents sont
  76. 3:01systématiquement mis à nu vous voyez
  77. 3:05notre part que nous avons une colonne
  78. 3:06que nous n'avons absolument pas spécifié
  79. 3:08la colonne classe qui va permettre à
  80. 3:12l'om de savoir de quelle classe il
  81. 3:14s'agit sur l'enregistrement en question
  82. 3:16le comportement que nous constatons la
  83. 3:19est un comportement par défaut qui
  84. 3:21s'appelle le table' père hiérarchie
  85. 3:24c'est à dire que tous les
  86. 3:26enregistrements et toutes les colonnes
  87. 3:28seront rassemblés dans une seule et même
  88. 3:30table il existe une autre possibilité
  89. 3:33qui permet de changer la façon dont les
  90. 3:36tables sont créés nous avons la
  91. 3:38possibilité de surcharger ce
  92. 3:40comportement en définissant que nous ne
  93. 3:41souhaitons pas avoir une table par
  94. 3:44hiérarchie mais nous souhaitons avoir
  95. 3:46une table par sous-classe 'table père se
  96. 3:50classe en spécifiant cette option nous
  97. 3:53allons changer la façon dont les données
  98. 3:56vont être stockés dans notre base de
  99. 3:57données et vous voyez que en spécifiant
  100. 4:00ici table' périr archi falls je vais
  101. 4:04forcer l'autre comportement ce qui va
  102. 4:06changer la façon dont les données sont
  103. 4:08présentes dans ma base de données dans
  104. 4:10le même exemple strictement que dans le
  105. 4:13premier cas je me retrouve non plus avec
  106. 4:15une seule table mais avec trois tables
  107. 4:17une table pour chacune des classes vous
  108. 4:20remarquerez que la table user contient
  109. 4:23toutes les données de base est que les
  110. 4:26tables clients et les tables prospects
  111. 4:28contiennent uniquement les données qui
  112. 4:30sont relatives et spécifiques à leur
  113. 4:32classe
  114. 4:33l'avantagent de cette approche est que
  115. 4:35l'on n'a pas de colonne qui sera quasi
  116. 4:39systématiquement inutiles ou en tous cas
  117. 4:41me annuels dans tous les cas on va
  118. 4:43économiser de l'espace disque puisque on
  119. 4:45ne va pas stocker des enregistrements
  120. 4:47avec une partie des données qui est vide
  121. 4:49par contre le contrecoup le saas est que
  122. 4:52chaque requête va engendrer un job au
  123. 4:56niveau de la base de données dans la
  124. 4:58mesure où lorsque l'on va demander un
  125. 5:00client par exemple ou un prospect et
  126. 5:03bien la requête sera fait sur la table
  127. 5:05deux heures et il y aura un john sur les
  128. 5:08autres tables ensuite si besoin donc le
  129. 5:11coût d'exécution en termes de
  130. 5:13processeurs et supérieur
  131. 5:15par contre le coût en terme de stockage
  132. 5:17est inférieure il n'y a pas de meilleur
  133. 5:20choix systématique c'est à vous de voir
  134. 5:23en fonction de votre contexte en
  135. 5:25fonction de la façon dont vous allez
  136. 5:27utiliser votre héritage et des
  137. 5:29différentes classes c'est à vous de voir
  138. 5:31quel est selon vous le meilleur choix
  139. 5:34après ça par contre le framework gère
  140. 5:37l'héritage tout à fait correctement
  141. 5:40comme vous pouvez le voir dans l'exemple
  142. 5:42ci dessous si je demande à mon framework
  143. 5:45de faire le rendu de la liste intégrale
  144. 5:48de tous les utilisateurs comme c'est
  145. 5:50fait ici je vais même retrouvé avec la
  146. 5:54liste de tous les utilisateurs
  147. 5:55peu importe ils sont d user des clients
  148. 5:59ou des prospects et les utilisateurs
  149. 6:02seront s'est réalisé de la bonne façon
  150. 6:04systématiquement

About this transcript

This page contains the full transcript of 2 4 GRAILS MODELISATION by DATUM ACADEMY, generated from the public captions YouTube serves with the video. The transcript has 959 words across 150 segments, with the original timestamps preserved so you can click any line to jump to that moment in the embedded player.

What you can do with it

Use the transcript to take notes, quote the speaker, build a study guide, generate a summary with ChatGPT or Claude via the YouTube Summary tool, or export it as a timed subtitle file with YouTube to SRT. You can also re-open it in the transcriber to choose a caption track available on the video.

Free YouTube transcript tool

YouTube2Text is a free YouTube transcript generator — no signup, no daily limit. Paste any YouTube link and get the full transcript instantly, with timestamps, click-to-jump, caption language selection, AI prompts for ChatGPT, Claude, and Gemini, and exports to TXT, SRT, VTT, or Markdown.