Conclusion#
Résumé de la séance#
Programmes et compilation :
Algorithme, programme, sources, binaire, assembleur
Interpréteur, compilateur
Cycle de vie d’un programme
Compilation séparée pour la modularité :
Découper un programme non seulement en fonctions, mais en fichiers
Bibliothèque de fonctions réutilisables entre programmes
fichier d’entêtes :
max.hpp
fichier source :
max.cpp
fichier de tests :
maxTest.cpp
Digressions :
Surcharge : un nom, plusieurs fonctions
Templates : une fonction, plusieurs types
Espaces de noms
Résumé des bonnes pratiques vues ce semestre (méthodologie de développement)#
Développement incrémental :
Toujours être «proche de quelque chose qui marche»
Gestion de version (
git
,mercurial
, …)
Spécifications et tests :
Spécification : définir précisément la sémantique des fonctions :
qu’est-ce qu’elles doivent faire?Test : vérifier que la sémantique est respectée sur des exemples
Analogie Programmer↔Démontrer : Documentation↔Énoncé, Test↔Exemple, Code↔Démonstration
Modularité :
Découpage d’un programme en fonctions : cours 4
Découpage d’un programme en modules : aujourd’hui !
Découpage d’un programme en espace de noms : plus tard
Conclusion : qu’avez-vous vu ce semestre?#
Les bases de la programmation impérative
Contrôle du flot d’exécution : instructions conditionnelles et itératives, fonctions
Gestion des données : variables, tableaux, collections, entrées et sorties, fichiers
Méthodologie de développement
Développement incrémental
Spécifications et tests
Modularité
Une esquisse de quelques thèmes de l’informatique
Programmation modulaire (S2)
Algorithmes et structures de données, complexité (S2)
Science des données (S2)
Web, graphisme, architecture, réseau, …
Ce n’est que le début de l’aventure !