À retenir
- Passage d'une idée abstraite à un objet informatique concret.
- Permet de manipuler des règles ou des relations comme de simples données.
- Concept clé pour la flexibilité des systèmes logiciels avancés.
Réifier consiste à transformer un concept abstrait, une règle ou une action en un « objet » bien réel que l'ordinateur peut manipuler, stocker ou modifier. C'est comme si, au lieu de simplement suivre une règle de circulation, on en faisait un panneau physique que l'on peut déplacer ou repeindre.
Étymologie
Vient du latin res (la chose) et du suffixe -ifier (faire, transformer). Littéralement, cela signifie « transformer en chose ». Le terme est passé de la philosophie à l'informatique pour décrire la matérialisation d'une idée en une structure de données concrète.
Exemples d'usage
- En programmation, transformer une fonction (une action) en un objet que l'on peut passer en paramètre à une autre fonction.
- Dans le Web sémantique (RDF), transformer une affirmation (ex: "le ciel est bleu") en une ressource à part entière pour pouvoir préciser qui a fait cette affirmation ou à quelle date.
- Transformer une relation entre deux utilisateurs (ex: l'amitié) en un objet de type
Relationcontenant la date de début et le niveau d'affinité.
Cas d'usage
On utilise la réification dans la programmation orientée objet pour manipuler des concepts complexes, dans le Web sémantique pour décrire des métadonnées sur des données, et lors de la création de langages de programmation pour permettre au code de s'analyser lui-même (réflexion).
Bonnes pratiques
La réification est puissante mais complexifie le modèle de données. Il faut l'utiliser uniquement lorsqu'il est nécessaire de traiter un concept ou une relation comme une donnée indépendante. Évitez de tout réifier au risque de rendre votre code lourd et difficile à lire.
Synonymes
Antonymes
Conseil
Pour bien comprendre, imaginez une commande dans un restaurant : au lieu d'être juste un cri du serveur vers la cuisine, elle devient un bon de commande (objet) que l'on peut dater, horodater, annuler ou modifier. C'est cela, la réification.
Questions fréquentes
Pourquoi réifier une donnée ?
Cela permet d'ajouter des informations supplémentaires sur un concept qui n'était auparavant qu'une simple étape ou une relation invisible.
Quelle est la différence avec l'instanciation ?
L'instanciation crée un exemplaire d'un modèle défini, alors que la réification rend « physique » (en mémoire) un concept qui n'était pas forcément prévu pour être un objet au départ.