Volumes horaires
- CM 6.0
- Projet -
- TD -
- Stage -
- TP 8.0
- DS 2.0
Crédits ECTS
Crédits ECTS 0.5
Objectif(s)
L'objectif de ce cours est la prise en main des outils les plus courants pour le développement logiciel sous Linux. Ces outils sont essentiels pour améliorer la qualité du logiciel mais aussi l'efficacité des développeurs.
Contenu(s)
Des outils pour la programmation en C
Il s'agit tout d'abord d'apprendre à utiliser
- le shell,
- l'outil de gestion de compilation make, et
- la chaîne de compilation gcc, incluant le debugger gdb en mode ligne de commande.
Plus tard dans le semestre, on présentera l'outil d'analyse de code, Valgrind qui permet entre autres de détecter les erreurs de gestion de la mémoire, très courantes en C.
Un outil de gestion de version
On présente l'outil git de gestion de version d'un logiciel en cours de développement.
- on commence par les commandes de bases pour le travail en individuel.
- on poursuit avec le bon usage des branches pour le travail en équipe sur un même logiciel pour faciliter la fusion de code.
Un Environnement de Développement Intégré (IDE pour Integrated Development Environment).
Il s'agit d'apprendre à utiliser les fonctionnalités principales d'un IDE :
création et gestion des projets, navigation dans les différentes vues, déverminage à l'aide d'un debugger symbolique intégré.
On utilisera, Eclipse, l'IDE de référence pour le développement logiciel en langage Java. Eclipse est particulièrement bien adapté du fait qu'il a été développé au départ par et pour et par des
développeurs en programmation orientée objet.
Pour avoir dans Eclipse un support pour le programmation en C, il existe un plugin CDT qui fournit un environnement complet de développement équivalent à celui du langage Java.
Prérequis- avoir une machine opérationnelle sous Linux
- maitriser les commandes d'installation de package Linux
100% contrôle continu
En cas de non validation d’une UE, le jury peut autoriser l’élève ingénieur à passer des épreuves complémentaires pour la valider.
Code de l'enseignement : KAIN5M14
Langue(s) d'enseignement :
Vous pouvez retrouver ce cours dans la liste de tous les cours.
LES OUTILS
- Linux : https://www.gnu.org
- Gestion de version (Git) : https://www.git-scm.com/
- Environement de Développement (Eclipse) : https://www.eclipse.org
- Déverminage (gdb) : https://fr.wikipedia.org/wiki/GNU_Debugger
- Analyse de code (Valgrind) : https://www.valgrind.org