* Ces horaires sont donnés à titre indicatif.
1 | Identifier les données utiles au fonctionnement d’un logiciel |
2 | Architecturer un logiciel complexe en définissant le modèle des données et la structure des composants à concevoir ou à utiliser |
3 | Comprendre et exécuter un cahier des charges |
4 | Utiliser des composants logiciels existants et les intégrer dans un développement |
5 | Choisir de façon raisonnée la manière de stocker et d’exploiter les données persistantes d’un logiciel |
6 | Intégrer les problématiques de tests, de robustesse, de qualité et de sécurité dans l’architecture d’un logiciel |
7 | 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 |
8 | Concevoir des algorithmes répondant à un cahier des charges, en choisissant les structures de données adéquates |
9 | Lire et analyser une spécification, en tirer une réalisation |
10 | Analyser et décomposer une tâche pour concevoir un algorithme |
11 | Identifier et manipuler les représentations des données en machine |
12 | Choisir une structure de données pertinente |
13 | Utiliser les algorithmes classiques, les combiner pour résoudre des problèmes complexes |
14 | Concevoir un algorithme itératif ou récursif adapté à une structure de données |
15 | Dérouler un algorithme |
16 | Programmer un logiciel implémentant une spécification fonctionnelle et technique |
17 | Résoudre un problème logiciel (erreur à la compilation, à l’exécution) |
L’UE LIFAP1 proposée aux étudiants de première année de Licence Math / Info permet d’acquérir des connaissances de base en algorithmique. Une fois la syntaxe algorithmique assimilée, la traduction se fera dans un langage impératif. Ainsi, le programme de l’UE peut se subdiviser en deux grandes parties :
1- Algorithmique
syntaxe algorithmique
écriture d'algorithmes
structures de contrôle : itérations, conditions
sous-programmes (fonctions / procédures)
mode de passage des paramètres dans des sous programmes
tableaux / chaînes de caractères
structures
2- Programmation impérative
Traduction dans un langage de programmation adapté des notions algorithmiques étudiées (fonction/ procédure, alternative, séquence, structures, tableaux, chaînes de caractères, …)