Domicile > Programmation > Abstraction

Abstraction

L'abstraction (du latin abs, signifiant en dehors de et trahere , signifiant dessiner) est le processus qui consiste à retirer ou à enlever des caractéristiques à quelque chose afin de le réduire à un ensemble de caractéristiques essentielles. Dans la programmation orientée objet, l'abstraction est l'un des trois principes centraux (avec l'encapsulation et l'héritage). Grâce au processus d'abstraction, un programmeur cache toutes les données d'un objet, sauf celles qui sont pertinentes, afin de réduire la complexité et d'augmenter l'efficacité. De la même manière que l'abstraction fonctionne parfois dans l'art, l'objet qui reste est une représentation de l'original, avec des détails non désirés omis. L'objet résultant peut lui-même être qualifié d'abstraction, c'est-à-dire d'entité nommée constituée d'attributs sélectionnés et d'un comportement spécifique à une utilisation particulière de l'entité d'origine. L'abstraction est liée à la fois à l'encapsulation et au masquage de données.

Dans le processus d'abstraction, le programmeur essaie de s'assurer que l'entité est nommée d'une manière qui aura du sens et qu'elle aura tous les aspects pertinents inclus et aucun des aspects étrangers. Une analogie de l'abstraction dans le monde réel pourrait fonctionner comme suit : Vous (l'objet) organisez un rendez-vous avec un inconnu et décidez de ce que vous allez lui dire pour qu'il puisse vous reconnaître dans le restaurant. Vous décidez d'inclure les informations concernant l'endroit où vous vous trouverez, votre taille, la couleur de vos cheveux et la couleur de votre veste. Ce sont toutes des données qui aideront la procédure (votre rendez-vous vous trouvant) à se dérouler sans problème. Vous devriez inclure toutes ces informations. D'un autre côté, il y a beaucoup d'informations vous concernant qui ne sont pas pertinentes pour cette situation : votre numéro de sécurité sociale, votre admiration pour les films obscurs et ce que vous avez pris pour "show and tell" en CM2 ne sont pas pertinents pour cette situation particulière car ils n'aideront pas votre rendez-vous à vous trouver. Cependant, comme les entités peuvent avoir n'importe quel nombre d'abstractions, vous pourrez les utiliser dans une autre procédure à l'avenir.

Par Guerra Labombard

Serveur sans tête :: Abstraction de données
Liens utiles