Introduction à la science informatique

Derrière la technique, la science

L’exemple du site de vente en ligne illustre les grands concepts de la science informatique :

  • Information. L'information est présente tout au long du déroulement d’une commande : elle est créée (message du client, préparation de la facture), consultée (parcours du catalogue, recherche du prix et de la disponibilité), transmise (messages divers). Elle circule sur les réseaux, est affichée sous forme d’image, est stockée dans une base de données. Pour approfondir cette notion, allez ici.
  • Algorithme. Le déroulement d’une commande consiste en l’exécution d’une série d’actions élémentaires : envoi d’un message, extraction des informations (référence de l’article, identité du client), consultation de la base de données, préparation de la commande, demande de paiement, renvoi d’une confirmation au client. Ce déroulement peut connaître des variantes selon certaines conditions (article indisponible, paiement refusé). La description de ce processus bien défini, construit à base d’actions connues, et préparé en vue de la résolution d’un problème, est un algorithme. La notion d'algorithme est au cœur de l’informatique. Pour l’approfondir, allez ici.
  • Machine. Les algorithmes sont exécutés par des machines. La première description du site de vente en ligne montre de nombreux ordinateurs, séparés en groupes selon l’étape de traitement à laquelle ils participent. Mais les machines ne se réduisent pas aux ordinateurs : les réseaux, les terminaux, entre autres sont également des machines. Ce terme désigne tout dispositif disposant d’un répertoire d’actions qu’il est capable d’exécuter sur demande. L’explication du déroulement d’une commande sur le site de vente met aussi en jeu des “machines” abstraites (notées "étage web”, “étage serveurs”, etc.), qui sont des représentations schématiques d’une situation plus complexe (ainsi un ensemble d’ordinateurs est représenté par une machine unique, pour mettre l’accent sur la fonction et non sur les détails d’exécution). Pour approfondir la notion de machine, allez ici.
  • Langage. Comme indiqué ci-dessus, une machine possède un répertoire d’actions qu’elle peut exécuter sur demande. Pour combiner l’exécution de ces actions en vue d’exécuter un algorithme donné, on a besoin d’un langage. En fait, l’ensemble des actions élémentaires de la machine constitue déjà les éléments d’un tel langage. Mais celui-ci est généralement considéré comme trop primitif pour être utilisé tel quel. Aussi a-t-on inventé des langages plus élaborés pour exprimer les algorithmes au moyen de programmes. Ces programmes sont traduits dans le langage élémentaire d’une machine pour être exécutés. Pour approfondir la notion de langage, allez ici.