La démarche de l'informatique: la formalisation

Les langages de programmation

Jusqu'au milieu des années 80 et pour parler schématiquement, on peut dire qu'il existait deux types de langage de programmation contrastés: d'une part, les langages procéduraux et fonctionnels (comme Pascal, LISP ou Basic) et, d'autre part, les langages déclaratifs (comme Prolog). La programmation procédurale peut être décrite comme une explicitation du savoir-faire suivie de sa transposition dans un langage exécutable par un automate [par exemple expliquer pas à pas comment trier une liste de mots]. A l'inverse, la programmation déclarative consiste à décrire, dans un premier temps, les relations qui existent entre les différents éléments du problème que l'on cherche à résoudre sans programmer d'actions spécifiques [par exemple, établir les relations entre sujets dans un arbre généalogique]. Depuis à peu près une dizaine d'années, s'est imposé dans le monde de l'informatique un nouveau mode de programmation: la programmation orientée-objet (le premier langage portait le nom suggestif de SmallTalk). Ce mode de programmation est bien connu de tous les utilisateurs d'interfaces graphiques (Macintosh ou Windows) et son prototype " grand public " le plus répandu est le langage Hypercard (ou sa version Windows: Toolbook). Ces langages permettent de résoudre certaines des difficultés de conception que les programmeurs rencontraient avec l'une ou l'autre des deux familles de langage de programmation citées (Meyer, 1988). Ces difficultés concernaient essentiellement la mise au point et la mise à jour des programmes complexes.

Dans les langages "orientés-objet", la programmation consiste à définir des classes d'objets "interactifs" qui contiennent à la fois des propriétés paramétrables (par exemple, une fenêtre présentée sur l'écran peut être ouverte ou fermée) et un répertoire de méthodes pour agir sur d'autres objets de l'environnement (par exemple, un objet déplacé sur une autre fenêtre exécute une commande liée à ce nouveau contexte). Cette métaphore informatique permet de proposer aux utilisateurs de logiciels un univers représenté plus ou moins analogue au monde réel. En effet, c'est la manipulation directe des objets sur l'écran qui définit, pour un contexte donné, les commandes qui seront exécutées (Kiczales, Lamping & Bobrow, 1991). Cette évolution a permis de rendre les applications informatiques plus faciles à programmer pour l'utilisateur et plus conviviales à utiliser. Les implications de ces recherches dans le domaine de l'éducation sont nombreuses, en particulier dans le domaine de la programmation graphique (Wolfe, 1992).

* Kiczales, G., Lamping, J. and Bobrow, D.G. (1991) - The art of Metaobject protocol. Cambridge, Ma: MIT Press.

* Meyer, B. (1988) - Object-Oriented software construction. New York: Prentice-Hall.

* Wolfe, C.R. (1992) - Using Authorware Professional for developping courseware. Behavior, Research, Methods & Instruments, 24(2), pp. 273-276.



PNR33 - NFP33 - 9 NOV 1996

Generated with Harlequin WebMaker

TECFA Research * AGORA PNR33 - NFP33