ECTS
3 crédits
Composante
UFR Physique, Ingénierie, Terre, Environnement, Mécanique (PhITEM)
Période de l'année
Automne (sept. à dec./janv.)
Description
Cette unité d’enseignement vise à approfondir la maîtrise de la programmation et de l’algorithmique pour l’ingénieur, en utilisant le langage Python comme support principal. Le cours aborde tant les concepts fondamentaux de structuration de code que des applications spécialisées (traitement de signal, science des données, interface graphique).
- Bases de l’algorithmique et du langage : structures de contrôles (itérations, conditions), types de données complexes (dictionnaires, listes, tuples), modularité du code, passage d’arguments par référence et algorithmique en pseudo-langage.
- Environnement de développement et outils : Prise en main des IDE (Spyder, VS Code, Jupyter), outils de débogage et initiation au versioning avec Git.
- Applications thématiques (Filière MISTRE) :
- Calcul numérique et visualisation (NumPy, Matplotlib).
- Traitement du signal (Séries de Fourier, filtrage, convolution).
- Représentation bas niveau : Manipulation de bits, alignement mémoire, norme IEEE754.
- Data Science : Manipulation de données (Pandas, Excel/CSV) et requêtes Web (JSON/REST).
- Programmation Orientée Objet (POO) et interfaces graphiques avec Qt.
- Automatisation par scripts (Scripting orienté CAO : Blender, FreeCAD ou KiCad).
Objectifs
- Maîtriser les structures de données et la logique algorithmique avancée.
- Être capable d’utiliser les outils professionnels de développement et de versioning.
- Savoir appliquer la programmation à des problématiques d'ingénierie concrètes (traitement de données, signal, CAO).
- Structurer un projet logiciel complexe (POO, modularité).
Heures d'enseignement
- CMCM3h
- TDTD12h
- TPTP9h
Pré-requis recommandés
- Bases de l'algorithmique (niveau Licence).
- Utilisation courante d'un système d'exploitation.
Période
Semestre 7