* Ces horaires sont donnés à titre indicatif.
UE Algorithmique, programmation et structures de données (LIFAPSD) ou connaissances équivalentes
* Architecturer un logiciel complexe en définissant le modèle des données et la structure des composants à concevoir ou à utiliser
- Identifier et manipuler les représentations des données en machine
- Comprendre et exécuter un cahier des charges
- Utiliser des composants logiciels existants et les intégrer dans un développement
- Structurer et modéliser le code d’un logiciel pour en faciliter la maintenance et en améliorer la qualité, en utilisant des standards du domaine comme l’UML
* Concevoir des algorithmes répondant à un cahier des charges, en choisissant les structures de données adéquates
- Lire et analyser une spécification, en tirer une réalisation
- Analyser et décomposer une tâche pour concevoir un algorithme
- Identifier et manipuler les représentations des données en machine
- Choisir une structure de données pertinente
- Concevoir un algorithme itératif ou récursif adapté à une structure de données
- Dérouler un algorithme
- Lire et analyser une spécification, en tirer une réalisation
- Résoudre un problème logiciel (erreur à la compilation, à l’exécution)
- Analyser et interpréter les résultats produits par l'exécution d’un programme
- Interpréter (à la main et via un programme) un code écrit dans un langage
* Concepts de la programmation objet : classe, héritage, polymorphisme, généricité, modularité, méthodologies
* Notations UML : diagrammes fonctionnels, statiques et dynamiques
* Applications avancées de la POO : processus, Modèle Vue Contrôleur, programmation événementielle, design patterns
* Applications dans un langage orienté objet : langage JAVA