Une erreur est survenue. Merci de réessayer ultérieurement
Le mail de partage a bien été envoyé.
LDD2 Informatique, Mathématiques
Licence Double-Diplôme
Mention Informatique, Mathématiques
Français
Les Licences double-diplômes (LDD) visent des formations renforcées et exigeantes en 240 ECTS, caractérisées par la pluridisciplinarité, le développement de l’ouverture internationale et une formation précoce aux compétences recherche et aux défis scientifiques et sociétaux.
Les deux disciplines se complètent que ce soit dans les domaines de l’informatique théorique, de la science des données et de l’intelligence artificielle ou du calcul scientifique et de la simulation.
Il y a quatre mentions de LDD qui intègrent les mathématiques ; elles partagent des cours de mathématiques spécifiques, tout au long des trois années, plus exigeants que ceux de la licence mono-disciplinaire.
Chaque année, il est demandé de valider un ensemble d'unités socles en informatique et de même pour les mathématiques.
Mathématiques et Informatique sont au coeur de la transition numérique qui impacte et transforme l’ensemble des activités et des métiers. Les étudiant.e.s sont formés à modéliser des problèmes, chercher et trouver des solutions, les coder efficacement. Ils acquièrent les bases disciplinaires et abordent les domaines de l’apprentissage automatique et de la science des données, fondements de l’intelligence artificielle.
Objectifs pédagogiques
Cette Licence Double-Diplôme offre une formation solide et équilibrée en informatique et en mathématiques, pour préparer ensuite dans d’excellentes conditions un Master dans l’une des deux disciplines ou aux interfaces. Elle permet également de préparer l’entrée sur dossier dans des grandes écoles.
Admission
Capacité d’accueil
Places
60
Public visé et prérequis
Les étudiants ayant validé la première année de la LDD Informatique, Mathématiques poursuivent naturellement en seconde année. Quelques places sont offertes principalement pour les meilleurs étudiants du portail maths-info ainsi que ds étudiants cumulatifs de Classes Préparatoires aux Grandes Ecoles MPI ou MP option informatique.
Période(s) de candidature
Plateforme E-candidat
Du 25/05/2026 au 05/07/2026
Pièces justificatives
Facultatives
Document justificatif des candidats exilés ayant un statut de réfugié, protection subsidiaire ou protection temporaire en France ou à l’étranger (facultatif mais recommandé, un seul document à fournir) :
- Carte de séjour mention réfugié du pays du premier asile
- OU récépissé mention réfugié du pays du premier asile
- OU document du Haut Commissariat des Nations unies pour les réfugiés reconnaissant le statut de réfugié
- OU récépissé mention réfugié délivré en France
- OU carte de séjour avec mention réfugié délivré en France
- OU document faisant état du statut de bénéficiaire de la protection subsidiaire en France ou à l’étranger.
Bases d’algorithmique et de structures de données (graphes, arbres, récursivité).
Notions élémentaires de logique booléenne et de complexité algorithmique.
Programme / plan / contenus
L'UE Projet Informatique vise la conception et la mise en œuvre complète d’un système fondé sur la manipulation de graphes et la modélisation de circuits logiques et arithmétiques. Le projet mobilise les acquis en algorithmique, structures de données et programmation orientée objet dans une démarche scientifique expérimentale.
La première partie porte sur la modélisation et la manipulation de graphes orientés : création, cohérence, connexité, génération aléatoire et visualisation. Les étudiants y développent des structures de données adaptées et mettent en œuvre des algorithmes de parcours et de recherche de chemins, impliquant un tri topologique, en s’appuyant sur des représentations orientées objets robustes et extensibles.
La seconde phase exploite ces graphes pour représenter des circuits booléens, introduisant la logique combinatoire, et la conception de circuits arithmétiques tels que des additionneurs hiérarchiques. Une étape d’analyse syntaxique permet de traduire des expressions logiques en structures exécutables, puis de les simplifier par des règles de réécriture.
Le projet se conclut par l’étude d’un code correcteur d’erreurs inspiré du code de Hamming, mobilisant les notions de codage, de fiabilité et de validation expérimentale. Chaque étudiant conduit une démarche complète : conception, implémentation, expérimentation, évaluation et soutenance individuelle.
Objectifs d'apprentissage
Cette UE a pour objectif la réalisation complète d’un mini-projet de programmation intégrant plusieurs aspects fondamentaux de l’informatique : modélisation de structures de données complexes (graphes et circuits booléens), conception orientée objet, application d’algorithmes classiques (parcours, plus courts chemins, tri topologique), mise en œuvre de techniques heuristiques et expérimentales, et acquisition d’une démarche scientifique complète (conception, expérimentation, validation, évaluation des performances). Le projet mobilise des compétences transversales issues d’autres enseignements : algorithmique, programmation, logique, optimisation et architecture.
Organisation générale et modalités pédagogiques
Cours magistraux (2 h) pour introduire les concepts transverses (programmation orientée objet, démarche scientifique, algorithmique).
Travaux pratiques (24 h) sur les 12 semaines suivantes : développement progressif du projet, accompagné d’un suivi individualisé.
Travail personnel demandé entre les séances pour compléter les implémentations et les tests.
Notions de bases de programmation (conditionnelles, boucles, fonctions).
Connaissance des structures de liste chaînées et algorithmes associés
(parcours, insertion, tris, …).
Programme / plan / contenus
La programmation fonctionnelle est l'un des grands paradigmes de
programmation. À l'inverse de la programmation impérative, axée sur la
modification de valeurs en mémoire, la programmation fonctionnelle mets
l'accent sur la notion de calcul (qui renvoie un résultat). L'UE aborde
les concepts suivant :
Introduction au langage OCaml Programmation récursive sur les entiers
Types structurés (types algébriques, enregistrements) pour la
modélisation de problèmes
Structure de listes persistantes et récursion structurelle
Polymorphisme
Itérateurs génériques sur les listes
Objectifs d'apprentissage
Introduction du paradigme de programmation fonctionnelle. Ce cours donne les bases de la programmation applicative (sans effets de bords) et
récursive. Il met en avant la notion de fonction, en tant qu'objet de
première classe du langage (au même titre que les entiers, les chaînes
de caractères, …) et l'utilisation de la récursion comme structure de
contrôle principale. Le cours propose une introduction au langage OCaml.
Organisation générale et modalités pédagogiques
L'UE s'organise en cours accompagnés de séances de TP. L'évaluation se
fait par des épreuves de contrôle continu (interrogations écrites, TP
notés) et un examen terminal écrit.
Connaissances de base en algorithmique, structures de données et programmation (manipulation de structures tabulaires, compréhension des types et des relations entre données).
Aucune connaissance préalable en bases de données n’est requise.
Programme / plan / contenus
1. Conception d’une base de données
- Processus de conception
- Étapes : analyse, modélisation, validation
3. Modèle de données et modèle relationnel
- Concepts du modèle relationnel : relations, attributs, clés
- Du modèle E–A au modèle relationnel : transformation et contraintes
4. Langage SQL – Définition de schéma (LDD)
- Création de tables, contraintes d’intégrité, suppression et modification
5. Interrogation d’une base de données
- Algèbre relationnelle : opérations de base et équivalences
- SQL – Langage de manipulation (LMD) : sélection, projection, jointures, agrégations, sous-requêtes
6. Dépendances et conception de schéma
- Dépendances fonctionnelles
- Formes normales (1NF, 2NF, 3NF) et normalisation
Objectifs d'apprentissage
Fournir les concepts et techniques fondamentales pour la conception et la manipulation des bases de données relationnelles.
L’étudiant apprend à concevoir un schéma de données structuré, à le traduire dans un modèle relationnel et à interroger les données à l’aide du langage SQL.
À la fin de l’UE, l’étudiant sera capable de :
- Identifier les besoins en données et concevoir un modèle conceptuel adapté ;
- Maîtriser le modèle Entité–Association et ses principes (entités, associations, cardinalités, attributs) ;
- Traduire un modèle E–A vers un modèle relationnel cohérent ;
- Comprendre la notion de dépendance fonctionnelle et ses implications sur la conception de schémas ;
- Appliquer les formes normales pour obtenir des schémas de qualité ;
- Utiliser le langage SQL pour définir et interroger des bases de données (DDL et DML).
Organisation générale et modalités pédagogiques
Cours magistraux (18 h) : présentation des concepts fondamentaux.
Travaux dirigés et pratiques (24 h) : exercices de modélisation et de traduction vers le modèle relationnel, suivis de travaux pratiques sur la manipulation de schémas et l’écriture de requêtes SQL sous SGBD (e.g., PostgreSQL, SQLite), incluant 6 h consacrées à la conception et à l’interrogation d’une base de données à partir d’un cas réel.
L’enseignement alterne en permanence théorie et pratique, avec une mise en œuvre concrète des notions abordées.
Compétences
- Concevoir une base de données à partir d’un cahier des charges.
- Maîtriser la modélisation E–A et le passage au modèle relationnel.
- Appliquer la normalisation pour améliorer la cohérence des schémas.
- Utiliser SQL pour créer, interroger et gérer des bases relationnelles.
- Comprendre le lien entre modélisation conceptuelle et implémentation pratique.
Bibliographie
R. Ramakrishnan, J. Gehrke, Database Management Systems, McGraw-Hill.
G. Gardarin, Bases de données, Éditions Eyrolles.
H. Korth, A. Silberschatz, Systèmes de gestion de bases de données, McGraw-Hill.
J. Ullman, J. Widom, A First Course in Database Systems, Pearson.
Philippe Rigaux, Bases de données relationnelles : concepts, langages et systèmes, Dunod.
Ce cours présente les arbres, et leurs utilisation pour la réalisation de structures de données variées, ainsi que les graphes et leurs algorithmes de parcours. On y aborde les techniques générales de conception et d’analyse d’algorithmes.
Contenu :
Structures chaînées et arbres : description à base de pointeurs et caractérisation récursive
Opérations sur les arbres : parcours, recherche
Dictionnaires : tables de hachage, arbres de recherche, arbres préfixes, et leurs opérations
Diviser pour régner, algorithme de tri fusion
Borne de complexité sur les tris par comparaison
Structure de graphe
Algorithmes de parcours : en profondeur, en largeur, tri topologique, composantes connexes
Objectifs d'apprentissage
Connaissance des structures de données arborescentes et des graphes, et des techniques algorithmiques associées. Maîtrise des outils permettant de justifier la validité d’un algorithme et d’analyser ses propriétés de complexité.
Organisation générale et modalités pédagogiques
Cours accompagnés de TD et de TP. Évaluation par épreuves écrites.
Pour fonctionner correctement, les réseaux nécessitent un grand nombre d'équipements et de processus, rendant leur architecture souvent complexe. Pour réduire cette complexité, les différentes fonctions ont été décomposées en niveaux protocolaires. Après avoir posé les fondements des télécommunications et rappelé les bases de la transmission de l’information, cette unité d'enseignement détaille les différents niveaux de l'architecture protocolaire. Seront ainsi présentés les concepts suivants :
-historique et évolution d’Internet
-les principaux acteurs, L’IETF et les standards RFC.
-définition du modèle OSI et introduction au modèle TCP/IP
-bande passante, débit binaire, codage, …
-codes détecteurs, codes correcteurs, techniques d'accès
-le niveau Réseau (IP)
-le protocole IPv4
-L‘adressage IPv4 et ses contraintes
-Fonctionnement du NAT et Subnetting
-DHCP & ICMP
-L’évolution d‘IPv4 à IPv6
-Routage (RIP, BPG, OSPF)
-La couche Transport (TCP/UDP)
-Contrôle de flux et mécanismes de congestion
-Communication par sockets
Une série de travaux dirigés et de travaux pratiques permet d’assimiler et d’appliquer les différents concepts étudiés.
Objectifs d'apprentissage
Offrir les éléments de base pour comprendre le fonctionnement des réseaux informatiques et Internet
Ce cours pratique un aller-retour permanent entre des aspects de programmation objet (PO) et d’ingénierie du logiciel (GL).
Thèmes abordés en programmation Java :
Classes, interfaces, classes paramétrées Héritage et liaison dynamique Itérateurs et lambda-expressions Exceptions Interface utilisateur
Thèmes abordés en génie logiciel :
Analyse et modélisation des besoins d’un système Conception d’une architecture logicielle et d’une organisation de classes pour réaliser un système Langage de modélisation graphique UML Spécification d’un composant ou d’une opération Validation et test d’un composant
Objectifs d'apprentissage
Approfondissement des concepts de la programmation objet, avec utilisation avancée du langage Java. Connaissance du cycle de vie des logiciels et des processus de développement. Outils de modélisation de systèmes logiciels et de support au développement à grande échelle. On vise à la fois la virtuosité dans la programmation d’un composant donné et la capacité à insérer ce composant dans un projet plus large. À la fin, l’étudiant doit être capable de produire du code Java lisible, robuste et réutilisable, ainsi que de lire le code source de projets réels.
Organisation générale et modalités pédagogiques
L’UE s’organise en cours accompagnés de TD ou TP. L’évaluation se fait par des épreuves de contrôle continu (TP notés ou mini-projets) et deux épreuves écrites (partiel et examen terminal).
Attendus de l'UE Langue-Anglais2 : Niveau B1 minimum dans les 5 compétences linguistiques
Programme / plan / contenus
ANGLAIS GÉNÉRAL. Cette UE s'inscrit dans la continuité de l'UE Langue-Anglais1 : on prolongera notamment le
travail sur la prononciation ainsi que l'approche actionnelle dans les 5 compétences (compréhension
orale et écrite, expression écrite, expression orale en continu et en interaction) à partir de thèmes choisis tels que Science et Technologie, Médias et Réseaux sociaux.
L'interaction se fait à travers des documents écrits et/ou audiovisuels centrés sur une problématique et un scénario de
communication et/ou dans la cadre d'un projet tout au long du semestre. La communication interculturelle pourra être abordée dans le cadre du cours.
Attendus de l'UE Langue-Anglais2 : Niveau B1 minimum dans les 5 compétences linguistiques
Programme / plan / contenus
ANGLAIS GÉNÉRAL. Cette UE s'inscrit dans la continuité de l'UE Langue-Anglais1 : on prolongera notamment le
travail sur la prononciation ainsi que l'approche actionnelle dans les 5 compétences (compréhension
orale et écrite, expression écrite, expression orale en continu et en interaction) à partir de thèmes choisis tels que Science et Technologie, Médias et Réseaux sociaux.
L'interaction se fait à travers des documents écrits et/ou audiovisuels centrés sur une problématique et un scénario de
communication et/ou dans la cadre d'un projet tout au long du semestre. La communication interculturelle pourra être abordée dans le cadre du cours.
Le premier cours est consacré aux relations entre la Terre et le vivant, notamment l'Humanité. Le "système Terre" est une machinerie complexe, qui offre les conditions favorables à la vie sous l'action combinée du soleil, du cycle de l'eau et de celui du carbone. L'humanité, après s'être sédentarisée et avoir mis à son service le reste du monde vivant, a désormais une telle influence sur son environnement qu'elle en vient à menacer ces équilibres. On introduit la notion de services rendus par les éco-systèmes et celle d’empreinte écologique.
La seconde séance est articulée autour des trois champs d’organisation de la société : politique, droit et économie. Le fonctionnement des systèmes politiques est mis à l’épreuve par la « collision » des échelles de temps : l’immédiateté des attentes se heurte à la nécessaire vision de long terme. Le droit, à l’origine simple accompagnateur de la prédation de l’environnement, est peu à peu amené à se transformer pour tenir compte des limites planétaires. Enfin, sur le plan économique, la « tragédie des biens communs » illustre le fait qu’une ressource partagée ne peut être durablement gérée sans arbitrage commun.
Le troisième cours fait le lien traite l'amont et l'aval de nos systèmes productifs. La consommation d'énergie est le fondement du système économique. Après avoir analysé les voies très diverses par lesquelles l'énergie est mise à disposition, quelques ordres de grandeur des consommations aux échelles globales et individuelles sont présentés, en soulignant la place dominante des énergies fossiles - en dépit de leurs conséquences climatiques et environnementales. Les pollutions des eaux, de l'atmosphère et des sols sont discutées, en démontrant leurs conséquences parfois très concrètes sur la santé des humains et des écosystèmes.
La quatrième séance est dédiée à la biodiversité, qui se décline en termes d’espèces, de différenciation génétique au sein d’une espèce et d’écosystèmes regroupant des espèces en interaction entre elles et avec leur milieu naturel. Elle est confrontée à deux menaces importantes : le changement d'usage des terres et le phénomène de surexploitation.
La cinquième séance présente les trois autres menaces sur la biodiversité : le changement climatique, les pollutions et les espèces envahissantes. On y découvre les modèles développés pour prévoir l’évolution de la biodiversité en réponse au réchauffement climatique. Les mesures visant à réduire le réchauffement sont discutées à l’aune de leur impact, pas toujours favorable, sur la biodiversité.
La sixième séance présente les principales caractéristiques du système climatique et fait le lien entre le changement climatique et les émissions de gaz à effet de serre par les différents secteurs d’activité humaine. Les diverses méthodes d’étude du climat sont présentées, ainsi que les modèles de climat, leurs bases physiques et la manière dont ils sont contraints par les données témoignant des climats passés et les observations actuelles.
La septième séance aborde la manière de projeter les climats futurs, à partir de scénarios d'émissions de gaz à effet de serre eux-mêmes dépendant des choix de société. On y décrit certaines manifestations importantes du changement climatique, notamment la multiplication d'événements climatiques extrêmes en France et ailleurs dans le monde. Les impacts de ces changements physiques sur les cultures, la végétation et les écosystèmes marins tout comme sur la santé humaine sont abordés.
La huitième séance présente les processus d’adaptation aux changements climatiques et les transformations de société et de gouvernance que cette adaptation impose. Deux secteurs sont choisis pour illustrer le processus d’adaptation : celui de la santé publique et celui de l’agriculture.
La neuvième séance est consacrée aux pistes possibles pour limiter le réchauffement et lutter contre l’érosion de la biodiversité. Cela suppose d’atteindre des émissions nettes de CO2 nulles d'ici 2050, et de revoir notre rapport au vivant et nos modes d’appropriation des terres et des mers. Il faut donc repenser nos façons de produire, travailler, consommer, nous déplacer tout en visant l’équité sociale, ce qui implique nécessairement des compromis dans nos choix sociétaux, économiques et technologiques.
Objectifs d'apprentissage
Le principal objectif de cet enseignement est de faire comprendre les mécanismes et conséquences liés au réchauffement climatique et à l’érosion de la biodiversité, ainsi que leurs relations avec nos modes de vie et de consommation. Plus généralement, il s’agira d’acquérir une vision transversale pour appréhender les changements globaux, notamment en lien avec les objectifs de développement durable de l’ONU et le concept de limites planétaires. Les perspectives d’adaptation et de remédiation aux grandes transformations sont également présentées.
Organisation générale et modalités pédagogiques
L’ensemble des cours est disponible en ligne, en version asynchrone. Le cours se décompose en 9 chapitres, complétés par un TD (ce dernier est proposé en direct, mais son enregistrement est mis en ligne pour les absents). Une ou deux séances de questions-réponses en direct sont également organisées. Un contrôle continu est associé à chaque cours, et un examen final est organisé en fin de session.
Compétences
Développer une compréhension systémique des enjeux de la transition écologique, dans une approche pluri/transdisciplinaire : articuler différentes échelles de temps et d’espaces, appréhender le concept de limites planétaires, comprendre l’organisation du vivant sur le système Terre, savoir reconnaitre et classer les services fournis par les écosystèmes, faire le lien entre production, consommation et conséquences environnementales.
Etre capable de se projeter dans l’avenir : distinguer prévision et prospective, situer les évolutions actuelles du système terre et les projections pour l’avenir par rapport aux évolutions passées, comprendre comment sont construits modèles et scénarios, identifier les leviers d’adaptation et de transformation des sociétés.
Bibliographie
Enjeux de la transition écologique (coll. Sous la direction de Jean-Michel Lourtioz, Jane Lecomte et Sophie Szopa), EDP Sciences, http://doi.org/10.1051/978-2-7598-2661-2
Il s'agit d'un atelier (quatre demi-journées) de technique d'éloquence, prise de parole visant à aider les étudiants à préparer leur futur professionnel
L'objectif de cet enseignement est de favoriser le travail et l'approfondissement des mathématiques en petits groupes et d'entrainer les étudiant.e.s à présenter à l'oral un raisonnement, un théorème du cours ou une résolution d'exercice.
L'objectif de cet enseignement est de favoriser le travail et l'approfondissement des mathématiques en petits groupes et d'entrainer les étudiant.e.s à présenter à l'oral un raisonnement, un théorème du cours ou une résolution d'exercice.
1° initier une réflexion sur les processus de production de preuves scientifiques, 2° initier les étudiants à la méthodologie de la recherche (sources, données, analyse et interprétation des données).
L'enjeu est de faire travailler les étudiant.e.s sur les processus de construction et de validation des savoirs scientifiques en allant au-delà d'un idéal de faits et de preuves - univoques, sans ambiguïté, immuables et universelles - qui s'imposeraient d'eux-mêmes:
Comment les preuves sont-elles produites? Par qui ? Qui les valide ?
Comment les arguments sont-ils jugés convaincants au sein de la communauté scientifique qui les produit, ou dans un contexte social plus large?
Comment et par qui les méthodes scientifiques peuvent-elles être réappropriées pour produire du doute et remettre en question des consensus scientifiques établis ?
Objectifs d'apprentissage
Développer un sens critique et la réflexivité des étudiantes et étudiants sur les processus de production des connaissances scientifiques;
Initier les étudiants à la méthodologie de la recherche : sources : données, analyse et interprétation des données
Apprendre à faire des recherches de façon efficace sur une thématique donnée;
Apprendre à lire des textes en relevant la structuration de l'argumentation et développer la rigueur de la lecture;
Travailler sur des notions et les comprendre, enrichir son vocabulaire;
Travailler en équipe, préparer un exposé;
Travailler de manière individuelle et développer son autonomie;
Acquérir des compétences de type professionnel (CR, réunions, dossiers, entretiens...) : maîtrise de la lecture, de la rédaction, développer des qualités d'analyse, développer son argumentation...
Organisation générale et modalités pédagogiques
L'UE est organisée en 12 créneaux de 2h, alternant des séances avec un enseignant et des séances de travail en autonomie. Ces séances mettent en avant la participation des étudiants, à la fois à travers des travaux d’enquête collective qui sont restitués, mais aussi à travers les discussions générées à partir des textes d’historiens et de sociologues des sciences et des techniques qui sont étudiés avec les enseignants. Chacune des séances en autonomie donne lieu à la realisation d’un travail (devoir écrit, recherche ou presentation orale collective) qui compte pour le contrôle continu.
Le cours s’articule autour de trois grands axes progressifs : les langages formels et automates finis, les grammaires hors contexte et automates à pile, puis l’analyse syntaxique.
Première partie (5 cours) – Introduction aux langages formels, expressions rationnelles et automates finis.
On y aborde la hiérarchie de Chomsky, les opérateurs sur les langages, le lemme d’Arden et le théorème de Kleene. Les travaux dirigés visent à manipuler les opérateurs, démontrer des égalités de langages, construire et simplifier des automates d’état fini, déterministes et non déterministes, effectuer des déterminisations, supprimer les ε-transitions, et appliquer les méthodes de minimisation et de preuve de rationalité (lemme de la pompe, propriétés de clôture, décidabilité).
Deuxième partie (4 cours) – Grammaires hors contexte et automates à pile.
Les notions d’arbre de dérivation, d’ambiguïté, de normalisation (forme normale de Chomsky) et de décidabilité sont introduites. L’automate à pile est présenté comme modèle de reconnaissance des langages algébriques. Les exercices portent sur la construction, le nettoyage et la désambiguïsation de grammaires, ainsi que sur la démonstration de la nature algébrique d’un langage.
Troisième partie (3 cours) – Analyse syntaxique.
Cette section couvre les méthodes d’analyse descendantes (facile) puis ascendantes (plus difficile) avec les automates LR(0), SLR(1), LR(1) et LALR(1). Les étudiants apprennent à construire et utiliser ces automates pour analyser des langages, à travers des exemples de complexité croissante.
Objectifs d'apprentissage
À l’issue du cours, l’étudiant·e sera capable de :
Comprendre et manipuler les notions fondamentales de langages formels et d’automates finis.
Concevoir et démontrer des équivalences de langages à l’aide d’outils théoriques (lemme d’Arden, lemme de la pompe, clôtures).
Identifier et construire des grammaires hors contexte et relier ces grammaires aux automates à pile correspondants.
Appliquer les méthodes d’analyse syntaxique descendante et ascendante, y compris la construction et l’exploitation d’automates LR et SLR.
Démontrer la décidabilité de problèmes simples sur les automates et les grammaires.
Le cours permet de découvrir et s’approprier quelques outils mathématiques, en particulier : les démonstration par l’absurde, des démonstration de propositions utilisant des quantificateurs, les relations d’équivalence.
Le cours prépare au cours de compilation de L3, en considérant l'analyse de vrai langage de programmation.
Organisation générale et modalités pédagogiques
Le cours prépare aux TDs, lequels font digérer le cours. L'UE se termine par un TP d'analyse syntaxique. La note de Controle Continu comprends un devoir et/ou mini projet.
Bibliographie
Aho et Ullman "Compilateurs : principes, techniques et outils".
Connaissances de base en programmation impérative et par objets.
Programme / plan / contenus
Ce cours présente le domaine de l'interaction humain-machine. Il introduit les concepts de base de l'interaction du point de vue de l'utilisateur humain et du point de vue de l’ordinateur et couvre le cycle de conception, développement et évaluation des systèmes interactifs.
Il présente d’abord un ensemble de méthodes de conception des systèmes interactifs allant des entretiens avec les utilisateurs et du brainstorming au prototypage rapide et à la définition du modèle conceptuel d’une application interactive.
Il introduit ensuite les concepts et outils pour le développement logiciel d’applications interactives, en présentant l’architecture logicielle MCV, la programmation événementielle et réactive et les boîtes à outils d’interface.
Il présente enfin les techniques d’évaluation des systèmes interactifs aux différents stades du cycle de conception, en distinguant les méthodes qualitatives (« walkthroughs », études d’utilisabilité) des méthodes quantitatives (test A/B, expérimentations contrôlées).
Les TDs et TPs consistent en un ensemble d'exercices permettant à l'étudiant de développer son sens critique et de mettre en pratique les méthodes et techniques du cours pour concevoir et développer des interfaces plus adaptées aux besoins et caractéristiques des utilisateurs. Les TPs de programmation utilisent soit le langage Java avec les bibliothèques Java/FX ou Java/Swing, soit le langage JavaScript ou TypeScript avec les standards du Web (HTML, CSS) pour des applications s’exécutant localement dans le navigateur (sans serveur).
Plan du cours :
- Introduction (2 séances)
1 Qu’est-ce que l’Interaction Humain-Machine (IHM) ?
1.1 Styles d’interaction
2 Interaction graphique
2.1 La manipulation directe
2.2 Les actions élémentaires
2.3 Les tâches élémentaires de l’interaction
2.4 Les patterns d’interaction
- Conception (3 séances)
3 Modélisation conceptuelle
3.1 Tables d'interaction
4 Conception participative
4.1 Analyse des besoins
4.2 Idéation
4.3 Prototypage rapide
5 Conception visuelle
- Développement (5 séances)
6 Architecture d’une application interactive
6.1 Le modèle MVC
7 Programmation événementielle
7.1 Boucle d’événements
7.2 Gestionnaires d'événements
7.3 Écouteurs d'événements
7.4 Machines à états
8 Boîtes à outils d'interface
8.1 Interacteurs
8.2 Algorithmes de placement
9 Programmation réactive
9.1 Liaison de données
9.2 Pattern « observateur »
9.3 Signaux
10 Interactions standard
10.1 Navigation
10.2 Défaire / refaire
10.3 Sélection, poignées de manipulation
10.4 Copier-coller
10.5 Tirer-déplacer
- Évaluation (2 séances)
11 Évaluation qualitative
12 Évaluation quantitative
Objectifs d'apprentissage
Comprendre et mettre en pratique les principes, méthodes et techniques de base permettant de concevoir, développer et évaluer des applications interactives simples. Comprendre et maîtriser la programmation événementielle qui est au cœur du fonctionnement des applications interactives.
Organisation générale et modalités pédagogiques
Le module est organisé en 12 séances d'1h ½ de cours et 12 séances de 2h de TD/TPs. L'évaluation consiste en un contrôle continu (questionnaires en ligne, rendus de TD/TPs) et un examen de fin de module.
LANGUE GÉNÉRALE. Cette UE s'adresse à tout étudiant désireux d'apprendre une autre langue que l'anglais. Le travail se fera par groupes de niveau (3 niveaux minimum, y compris Grands débutants) qui sera déterminé par un test préalable. On travaillera les 5 compétences (lire, écrire, écouter, parler et interagir) en prêtant une attention toute particulière à la compréhension de l'oral et l'expression orale en interaction. L'objectif est d'être autonome dans des situations de la vie quotidienne et/ou professionnelle. Les langues proposées sont l'allemand, le chinois, l'espagnol, l'italien et le russe.
Listes des ateliers culturels proposés en UE libres.
Chaque atelier est par semestre. Il dure 25 heures pouvant inclure, selon l'atelier, un volume d'heure de travail personnel et donne droit à 2,5 crédits ECTS :
Afreubo (orchestre harmonique),
orchestre symphonique,
musique assistée par ordinateur,
théâtre Aztec,
théâtre classique,
théâtre d'impro TIPS,
théâtre et éloquence (uniquement au 1er semestre),
LANGUE GÉNÉRALE. Cette UE s'adresse à tout étudiant désireux d'apprendre une autre langue que l'anglais. Le travail se fera par groupes de niveau (3 niveaux minimum, y compris Grands débutants) qui sera déterminé par un test préalable. On travaillera les 5 compétences (lire, écrire, écouter, parler et interagir) en prêtant une attention toute particulière à la compréhension de l'oral et l'expression orale en interaction. L'objectif est d'être autonome dans des situations de la vie quotidienne et/ou professionnelle. Les langues proposées sont l'allemand, le chinois, l'espagnol, l'italien et le russe.
Listes des ateliers culturels proposés en UE libres.
Chaque atelier est par semestre. Il dure 25 heures pouvant inclure, selon l'atelier, un volume d'heure de travail personnel et donne droit à 2,5 crédits ECTS :
Afreubo (orchestre harmonique),
orchestre symphonique,
musique assistée par ordinateur,
théâtre Aztec,
théâtre classique,
théâtre d'impro TIPS,
théâtre et éloquence (uniquement au 1er semestre),