Algorithmique et langages de programmation
Résumé
Dans les débuts de l'informatique, un cours de programmation consistait essentiellement en une description des organigrammes, comme représentation graphique de la structure d'un programme (tellement embrouillée qu'il fallait bien en passer par là), et la liste des instructions d'un langage : les constantes entières s'écrivent avec des chiffres sans point décimal ni partie exposant, un identificateur... l'instruction LIRE, etc. Pour le reste, l'apprenti programmeur devait se débrouiller tout seul. On lui demandait de se jeter à l'eau. et de survivre par ses propres moyens.
On juge un arbre à ses fruits. Ceux de la programmation empirique furent dénoncés pour la première fois de façon sérieuse au colloque de Monterey en 1972 sur « le coût élevé du logiciel » : il est toujours délivré en retard, plein d'erreurs, intransportable d'une machine à l'autre...
Le problème de la programmation n'est pas de connaître les mots pour dire un programme, mais d'avoir un programme à dire. Il fallait donc recentrer l'enseignement : non pas enseigner un langage, mais faire que les étudiants aient quelque chose à dire On utilise un ordinateur pour lui faire exécuter une tâche fastidieuse ou réaliser des calculs complexes. Il faut lui donner soit la marche à suivre pour cette tâche, soit la méthode de résolution de ce problème, choses que l'on regroupe sous le nom « Algorithme ». Or, ce n'est pas parce que nous sommes capables de faire une certaine tâche que nous pouvons dire la marche à suivre pour y arriver : la plupart des candidats du jeu « des chiffres et des lettres » de la télévision sont capables de trouver une combinaison d'au plus 6 plaques imposées pour obtenir un résultat lui aussi imposé, ils ne savent pas eux-mêmes par quelle méthode ils trouvent le résultat. Le « pifomètre » est leur façon habituelle. Le problème de la programmation est donc d'abord celui de la création d'un algorithme. « Nous n'enseignons plus un langage de programmation, nous faisons de l'algorithmique. »
On juge un arbre à ses fruits. Ceux de la programmation empirique furent dénoncés pour la première fois de façon sérieuse au colloque de Monterey en 1972 sur « le coût élevé du logiciel » : il est toujours délivré en retard, plein d'erreurs, intransportable d'une machine à l'autre...
Le problème de la programmation n'est pas de connaître les mots pour dire un programme, mais d'avoir un programme à dire. Il fallait donc recentrer l'enseignement : non pas enseigner un langage, mais faire que les étudiants aient quelque chose à dire On utilise un ordinateur pour lui faire exécuter une tâche fastidieuse ou réaliser des calculs complexes. Il faut lui donner soit la marche à suivre pour cette tâche, soit la méthode de résolution de ce problème, choses que l'on regroupe sous le nom « Algorithme ». Or, ce n'est pas parce que nous sommes capables de faire une certaine tâche que nous pouvons dire la marche à suivre pour y arriver : la plupart des candidats du jeu « des chiffres et des lettres » de la télévision sont capables de trouver une combinaison d'au plus 6 plaques imposées pour obtenir un résultat lui aussi imposé, ils ne savent pas eux-mêmes par quelle méthode ils trouvent le résultat. Le « pifomètre » est leur façon habituelle. Le problème de la programmation est donc d'abord celui de la création d'un algorithme. « Nous n'enseignons plus un langage de programmation, nous faisons de l'algorithmique. »
Loading...