Que signifie «résolution» dans la programmation? [fermé]

12

Je vois dans de nombreux endroits où le mot Resolveest utilisé, dans Dependency Injection (résoudre une implémentation vers une interface), les gestionnaires de packages (ex: résoudre les dépendances des packages), le Web (ex: résoudre un nom d'hôte).

Alors, qu'est-ce qui rend la logique du code si spéciale qui fait que quelqu'un choisit le mot Resolveplutôt qu'un simple Convertou Transformou même un Get?

anouar.bag
la source
4
La définition et l'utilisation d'un mot en ce qui concerne le développement de logiciels est principalement basée sur l'opinion? ... Sensationnel.
svidgen

Réponses:

14

La différence est légère, mais constante. Transformer une représentation en une autre implique de prendre les mêmes données et de les exprimer dans un autre format - par exemple, un hexadécimal en nombre décimal ou des chaînes à casse mixte en une chaîne entièrement inférieure. En règle générale, vous n'avez besoin que d'un ensemble fixe de règles pour effectuer une telle transformation.

La résolution d' un nom implique généralement l'interrogation d'un référentiel qui associe des noms à des informations qui ne peuvent pas être prédites sans le référentiel. google.compeut se résoudre à une adresse IP spécifique (plusieurs, en fait), mais c'est un accident de l'historique d'attribution IP - il pourrait tout aussi bien s'agir d'un numéro totalement différent, et il n'y a aucun moyen de faire cette traduction qui ne fonctionne pas d'une manière ou d'une autre impliquent de stocker l'intégralité du registre ou de l'interroger en ligne. De même, la résolution des dépendances des packages nécessite généralement l' installation des packages missig - il ne suffit pas de connaître les noms des composants manquants, vous devez réellement acquérir leur contenuet le contenu n'est pas prévisible à partir du nom seul ("QMail" ressemble à un programme de messagerie, mais vous ne pouvez pas prédire ses propriétés exactes uniquement à partir du nom sans l'installer, car le nom transporte beaucoup moins d'informations que le programme compilé) .

Par conséquent, vous ne devez pas utiliser le terme «résolution» pour quelque chose qui est une simple transformation de données sans contexte. Réservez-le aux situations où une quantité importante d'informations est symbolisée par chaque nom, à tel point que le seul arrangement raisonnable est d'avoir un registre central pour cela.

Kilian Foth
la source
Une idée d'où vient cette terminologie (une analogie ou quelque chose)?
anouar.bag
@ anouar.bag Pour résoudre: trouver une réponse ou une solution à quelque chose ( merriam-webster.com/dictionary/resolve[1] ) => Résoudre un symbole / nom, c'est trouver la réponse pour ce symbole / nom, c'est-à-dire déterminer ce c'est.
Christophe