A propos de l'utilisation du terme "objet" en
informatique
3 mars 2001
Dans les langages orientés-objet, on appelle
"objet" un petit programme contenant :
- le nom propre (ou le matricule, ou l'identifiant)
désignant sans ambiguïté une entité du domaine étudié (un client, un
produit, un établissement, une machine, etc.)
- diverses variables, observées sur cette entité, et dont
il a été jugé utile de conserver la valeur en mémoire (par exemple taille,
poids ou date de naissance d'une personne ; adresse, activité principale, taille d'un établissement, etc.) ; on appelle ces variables
"attributs" ;
- diverses fonctions qui, appliquées aux
"attributs", lancent des traitements produisant d'autres attributs ou
encore des messages d'anomalie (calculer l'âge d'une
personne à partir de sa date de naissance et de la date du jour ; mettre à
jour la valeur d'un attribut à partir d'une nouvelle saisie ; s'assurer que la
saisie est réalisée dans un format conforme, que la donnée saisie a une
valeur acceptable etc.) ; on appelle ces fonctions "méthodes".
Ainsi l'objet (informatique) est une représentation d'une entité du monde
réel ; il garde trace de certains de ses attributs (mais non de tous, car toute
entité du monde réel possède
une infinité d'attributs)
; il leur associe des traitements spécifiques.
Le plus souvent, l'objet représente un cas particulier au
sein d'une "classe" : l'objet qui représente un client est un
cas particulier au sein de la classe "client". Lorsque l'on définit
une classe, on définit la liste des attributs et méthodes que l'on veut
connaître sur chacune des entités relevant de la classe. Lorsque l'on
indique les valeurs prises par l'identifiant et les attributs pour une entité
quelconque, on dit que l'on "instancie" la classe dont l'objet
particulier constitue une "instance".
Ce jargon s'éclaire si l'on pense à ce qui se passe
lorsque l'on fait une enquête statistique. L'individu appartenant au champ de
l'enquête, c'est l'entité qu'il s'agit de représenter. Le dessin du
questionnaire, c'est la définition de la classe. Remplir le questionnaire,
c'est l'instancier pour représenter un individu particulier. Les règles de codage
et de vérification automatique utilisées lors de la saisie, ce sont des "méthodes" au sens de l'orienté objet.
Cependant le terme "objet" est un faux ami car,
lorsque l'informaticien l'utilise pour désigner la représentation d'une entité du monde
réel, il s'écarte de l'usage courant (comme de l'usage technique du terme
"objet" en philosophie). Cet abus de langage conduit l'informaticien à
prononcer une phrase qui fait se dresser les cheveux du philosophe : "un objet, c'est une abstraction". Cette phrase est
évidente si l'on a compris que le terme "objet", pour un
informaticien, désigne une représentation ; elle est absurde si l'on conserve
à ce terme le sens qu'il a en philosophie, où il désigne une entité, un
être particulier et concret, relevant du monde réel, lorsqu'il est repéré par la
perception ou visé par l'intention d'un sujet.