Aller au contenu

Langages et programmation⚓︎

Les langages de programmation Turing-complets sont caractérisés par un corpus de « constructions élémentaires ». Sans introduire cette terminologie, il s’agit de montrer qu’il existe de nombreux langages de programmation, différents par leur style (impératif, fonctionnel, objet, logique, événementiel, etc.), ainsi que des langages formalisés de description ou de requêtes qui ne sont pas des langages de programmation.
L’importance de la spécification, de la documentation et des tests est à présenter, ainsi que l’intérêt de la modularisation qui permet la réutilisation de programmes et la mise à disposition de bibliothèques. Pour les programmes simples écrits par les élèves on peut se contenter d’une spécification rapide mais précise.

Contenus Capacités attendues Commentaires
Constructions élémentaires Mettre en évidence un corpus de constructions élémentaires. Séquences, affectation, conditionnelles, boucles bornées, boucles non bornées, appels de fonction
Diversité et unité des langages de programmation Repérer, dans un nouveau langage de programmation les traits communs et les traits particuliers à ce langage. Les manières dont un même programme simple s’écrit dans différents langages sont comparées
Spécification Prototyper une fonction. Décrire les préconditions sur les arguments. Décrire des postconditions sur les résultats. Des assertions peuvent être utilisées pour garantir des préconditions ou des postconditions
Mise au point de programmes Utiliser des jeux de tests. L’importance de la qualité et du nombre des tests est mise en évidence. Le succès d’un jeu de tests ne garantit pas la correction d’un programme.
Utilisation de bibliothèques Utiliser la documentation d’une bibliothèque. Aucune connaissance exhaustive d’une bibliothèque particulière n’est exigible.