====== L'héritage dans les datasheets ======
L'héritage est une notion essentielle dans la création d'un ensemble de DS, pour éviter de se répéter. Il permet d'hériter de caractéristiques d'une DS parente, voire de réécrire sur certaines, pour permettre de ne pas avoir à tout spécifier de nouveau lorsqu'on réalise un ensemble de DS ayant des caractéristiques communes.
Par exemple, imaginons un objet ''mon objet''qui puisse avoir quatre caractéristiques A, B, C et D, ayant entre 0 et 10 comme valeur.
On pourrait avoir
A = 2
B = 3
C = 4
D = 5
A = 2
B = 3
C = 4
D = 9
On voit que A, B et C sont identiques dans les deux objets, on pourrait donc se simplifier la tâche en faisant une DS parente :
A = 2
B = 3
C = 4
puis on appelle celle-ci depuis les deux autres :
parent = mon_objet
D = 5
parent = mon_objet
D = 9
En plus de permettre de ne pas avoir à se répéter, cela permet de répercuter tout changement dans un parent à tous ses enfants.
On peut malgré tout décider de préciser une différence par rapport au parent, ce qui permet de modifier une caractéristique commune :
parent = mon_objet
B = 7
D = 5
Dans les DS, le parentage se fait grâce à l'appel :
Il est conseillé de bien organiser sa [[fr:rcdsnomenclature|nomenclature de DS]] pour s'y retrouver, et permettant d'identifier rapidement un parent d'une fiche complète :
* mettre un underscore "_" en début de nom des parents pour les avoir en premier dans un listing de répertoire ;
* utiliser des underscores "_" pour certaines zones de nom par exemple, comme dans le code livré avec RC. Cela permet de savoir quels paramètres sont renseignés et lesquels sont absents si la nomenclature est explicite.
Bien évidemment, un DS parent peut appeler à son tour un ou plusieurs parents etc.
\\ Attention donc aux héritages en cascade (comme en CSS).
{{tag>datasheet }}