Qu'est-ce que la hiérarchie de classe?

Une hiérarchie de classe, également appelée taxonomie de classe, est un groupe de classes liées qui sont connectées par héritage pour effectuer des tâches similaires. Le sommet de la hiérarchie peut être une classe de base unique à partir de laquelle toutes les autres classes inférieures sont dérivées, ou la hiérarchie peut comporter plusieurs classes de base dont les fonctionnalités sont fusionnées ultérieurement dans une ou plusieurs classes dérivées. Les relations entre les classes peuvent être illustrées sous forme d'arbres et chaque petit arbre de la grande taxonomie peut également être considéré comme une hiérarchie.

Toutes les hiérarchies de classe ne peuvent pas avoir plusieurs racines et la structure de toute hiérarchie de classe dépend en grande partie du langage dans lequel elle est écrite. C ++ autorise l'héritage multiple, de sorte que des hiérarchies complexes peuvent être construites avec plusieurs racines et plusieurs arbres fusionnés. En revanche, Java® se limite à un héritage unique, ses relations de classes sont généralement plus simples, elles sont construites sous la forme d'arbres relativement autonomes avec une seule racine. L'héritage d'interface peut ajouter une certaine complexité à une hiérarchie de classes dans Java®, mais les interfaces ne sont presque jamais invoquées dans un cadre si complexe que ce serait comme si vous fusionniez des arbres.

Les composants d'une hiérarchie de classe peuvent varier en type et en fonction, à condition que les règles du langage soient toujours suivies en ce qui concerne l'héritage. Les classes d'une hiérarchie peuvent être publiques, protégées, abstraites, concrètes ou virtuelles. Les interfaces, les fonctions globales et les amis peuvent également être utilisés. Selon le langage informatique, certains de ces types peuvent se prêter mieux que d'autres à l'héritage. En général, les hiérarchies sont très flexibles et peuvent être utilisées de différentes manières à différentes fins.

Il n'y a pas de règles strictes concernant le lieu où des types particuliers de classes doivent être placés dans une hiérarchie. N'importe quelle classe peut être n'importe lequel des types mentionnés ci-dessus. En général, les dernières classes de la hiérarchie qui ne contiennent aucune classe dérivée doivent être publiques et concrètes. Etant donné que des hiérarchies de classes purement abstraites peuvent également exister, il ne s'agit que d'une règle empirique.

Bien qu'une hiérarchie de classes puisse s'avérer un outil utile pour organiser le code et encapsuler des fonctionnalités, il peut arriver qu'une analyse trop approfondie d'une hiérarchie puisse confondre le code, au lieu de le clarifier et de le rendre plus facile à gérer. Construire une relation solide entre plusieurs classes prend un certain temps de prévoyance; Bien qu'il soit peut-être plus facile au départ de diviser le code en plusieurs petits morceaux, ceux-ci risquent de devenir plus difficiles à gérer plus tard. Lorsqu'elle est correctement construite, une hiérarchie de classes aide les développeurs et les utilisateurs à déterminer le fonctionnement des classes. S'il est construit sans maintenance ni clarté, les nombreux niveaux d'héritage peuvent être déroutants à regarder et à comprendre.

DANS D'AUTRES LANGUES

Cet article vous a‑t‑il été utile ? Merci pour les commentaires Merci pour les commentaires

Comment pouvons nous aider? Comment pouvons nous aider?