Cet enseignement consiste en un approfondissement des principes et concepts liés à la programmation. Il est basé sur le langage de programmation Java, et donc aborde en particulier les concepts de la programmation orientée objet mais aussi les aspects fonctionnels. L'accent sera mis sur la méthodologie et les bonnes pratiques à adopter pour programmer proprement.
Principes de base de conception : Don't repeat yourself, Single responsability principle, refactoring
Méthodologie : spécification, documentation, tests, gestion de version
Compétences à acquérir
Se servir aisément de plusieurs paradigmes de programmation (approches impérative, fonctionnelle, objet et concurrente) ainsi que plusieurs langages de programmation.
Utiliser une bibliothèque ou un framework en consultant sa documentation.
Connaître et respecter les bonnes pratiques à adopter en programmation afin de réaliser des programmes maintenables et exploitables par des tiers.
Lire, analyser et exploiter des documents techniques comme des documentations et des cahiers des charges.
Savoir trouver une erreur dans un programme et la corriger.
Utiliser les outils et techniques de gestion de projet informatique : environnement de développement, contrôle de version, automatisation de la production.
Langue(s) d'enseignement
Français
Bibliographie
Clean Code: A Handbook of Agile Software Craftsmanship, Robert C. Martin