Aller au contenu

Licence Informatique

Carte d'identité de la formation


85 % des néo-bacheliers réussissent leur 1re année de licence
taux calculé selon le nombre d'étudiants présents aux examens

OBJECTIFS

Le mot du responsable

Vous souhaitez acquérir un socle de connaissances et de compétences nécessaires en systèmes informatiques et en méthodes de conception et de développement de logiciels et de médias numériques ?

La licence informatique est faite pour vous.
A l’issue de cette licence, vous pourrez poursuivre en master ou choisir de vous insérer dans la vie professionnelle.

Photo du responsable de la formation

Jean-François Viaud

À l’issue de la formation, vous saurez

ADMISSION

Votre profil

Vous êtes titulaire du Bac, Bac+1, Bac+2 (ou équivalent)

Comment candidater ?

Vous devez candidater ici : à partir de mars 2018

PROGRAMME

À l’Université, quelle que soit votre formation, les années sont découpées en semestres.

Chaque semestre, vous suivrez cinq unités d’enseignement (UE) qui correspondent à :

  • 3 UE « majeures » : elles correspondent à la discipline d¿inscription de votre formation.
  • 1 UE « mineure » : elle correspond soit à la discipline de votre majeure soit à une autre discipline de votre choix. C’est à vous de décider.
  • 1 UE transversale : suivie par tous les étudiants de l’Université, elle correspond à des cours de langues, d’informatique d’usage, de préprofessionnalisation, bref, tout ce qui fera de vous un futur candidat recherché sur le marché de l’emploi.

Parcours Semestre d'orientation

Cours majeurs
  • 12h (1h 30min cours magistraux - 4h 30min travaux dirigés - 6h travail en accompagnement)
  • 2 crédits ECTS
  • Code de l'EC

    C4-101141-PROJ

  • 12h (1h 30min cours magistraux - 4h 30min travaux dirigés - 6h travail en accompagnement)
  • 2 crédits ECTS
  • Code de l'EC

    C5-101142-PROJ

  • 7h (1h 30min cours magistraux - 4h 30min travaux dirigés - 1h travail en accompagnement)
  • 2 crédits ECTS
  • Code de l'EC

    C6-101143-PROJ

  • 12h (1h 30min cours magistraux - 4h 30min travaux dirigés - 6h travail en accompagnement)
  • 2 crédits ECTS
  • Code de l'EC

    C3-101144-PROJ

  • 12h (1h 30min cours magistraux - 4h 30min travaux dirigés - 6h travail en accompagnement)
  • 2 crédits ECTS
  • Code de l'EC

    C8-101145-PROJ

  • 12h (1h 30min cours magistraux - 4h 30min travaux dirigés - 6h travail en accompagnement)
  • 2 crédits ECTS
  • Code de l'EC

    C2-101146-PROJ

  • 16h 30min (16h 30min cours magistraux)
  • 2 crédits ECTS
  • Code de l'EC

    C4-101131-GC

  • 16h 30min (16h 30min cours magistraux)
  • 2 crédits ECTS
  • Code de l'EC

    C5-101132-INFO

  • 16h 30min (16h 30min cours magistraux)
  • 2 crédits ECTS
  • Code de l'EC

    C6-101133-MATH

  • 16h 30min (16h 30min cours magistraux)
  • 2 crédits ECTS
  • Code de l'EC

    C7-101134-PHYS

  • 16h 30min (16h 30min cours magistraux)
  • 2 crédits ECTS
  • Code de l'EC

    C8-101135-STER

  • 16h 30min (16h 30min cours magistraux)
  • 2 crédits ECTS
  • Code de l'EC

    C2-101136-BIOT

  • 16h 30min (16h 30min travaux dirigés)
  • 2 crédits ECTS
  • Code de l'EC

    C6-101137-MATH

  • 16h 30min (16h 30min travaux dirigés)
  • 2 crédits ECTS
  • Code de l'EC

    C7-101138-PHYS

  • 30h (30h travaux dirigés)
  • Code de l'EC

    C6-101151-MATH

  • 30h (30h travaux dirigés)
  • Code de l'EC

    C7-101152-PHYS

  • 30h (30h travaux dirigés)
  • Code de l'EC

    C0-101153-FRA

  • 51h (18h cours magistraux - 33h travaux dirigés)
  • 6 crédits ECTS
  • Code de l'EC

    C6-101111-MATH

  • 25h 30min (9h cours magistraux - 16h 30min travaux dirigés)
  • 3 crédits ECTS
  • Code de l'EC

    C6-101112-MATH

  • 25h 30min (9h cours magistraux - 16h 30min travaux dirigés)
  • 3 crédits ECTS
  • Code de l'EC

    C4-101113-MECA

  • 25h 30min (9h cours magistraux - 16h 30min travaux dirigés)
  • 3 crédits ECTS
  • Code de l'EC

    C4-101114-MECA

  • 25h 30min (7h 30min cours magistraux - 15h travaux pratiques - 3h travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-101115-INFO

  • 25h 30min (9h cours magistraux - 13h 30min travaux pratiques - 3h travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-101116-INFO

  • 25h 30min (9h cours magistraux - 16h 30min travaux dirigés)
  • 3 crédits ECTS
  • Code de l'EC

    C6-101117-MATH

  • 25h 30min (9h cours magistraux - 16h 30min travaux dirigés)
  • 3 crédits ECTS
  • Code de l'EC

    C6-101118-MATH

  • 25h 30min (9h cours magistraux - 12h travaux dirigés - 4h 30min travaux pratiques)
  • 3 crédits ECTS
  • Code de l'EC

    C7-101119-PHYS

  • 25h 30min (10h 30min cours magistraux - 15h travaux dirigés)
  • 3 crédits ECTS
  • Code de l'EC

    C7-101120-PHYS

  • 25h 30min (10h 30min cours magistraux - 15h travaux dirigés)
  • 3 crédits ECTS
  • Code de l'EC

    C3-101121-CHIM

  • 25h 30min (9h cours magistraux - 12h travaux dirigés - 4h 30min travaux pratiques)
  • 3 crédits ECTS
  • Code de l'EC

    C3-101122-CHIM

  • 51h (34h 30min cours magistraux - 13h 30min travaux dirigés - 3h travaux pratiques)
  • 6 crédits ECTS
  • Code de l'EC

    C1-101123-BIOL

  • 25h 30min (15h cours magistraux - 7h 30min travaux dirigés - 3h travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C8-101124-STER

Cours transversaux
  • 18h (18h travaux dirigés)
  • 2 crédits ECTS
  • Code de l'EC

    DC-101101-ANG

  • 14h (14h travaux pratiques)
  • 2 crédits ECTS
  • Code de l'EC

    C9-101102-INFU

  • 18h (8h travaux dirigés - 10h travail en accompagnement)
  • 2 crédits ECTS
  • Code de l'EC

    HC-101103-MPP

Parcours général

Cours majeurs
Résultats d'apprentissage
  • Calculer des complexités dans des cas simples et comparer différents algorithmes
  • Maîtriser les structures de données usuelles, les algorithmes afférents et leur complexité
  • Avoir des notions de preuve par invariant de boucle
  • Résoudre des systèmes linéaires
  • Connaître les opérations matricielles (produit scalaire, norme, projection, changement de base)
  • Maitriser les bases de l'algèbre linéaire
  • Objectifs d'apprentissage

    Maitriser les tableaux, les tuples, les listes, les dictionnaires, les générateurs :
    -  Définition, opérations élémentaires, gestion de la mémoire
    -  Parcours par indice, parcours par itérateur
    Maîtriser les algorithmes de recherche dans un tableau :
    -  Eléments minimaux, maximaux
    -  Recherche dichotomique d’un élément dans un tableau trié
    -  Recherche d’un quantile dans un tableau trié ou non trié
    -  Recherche de motif dans un tableau
    Maîtriser des algorithmes simples de tri (par sélection, par insertion)
    Maîtriser le principe « diviser pour régner » dans le tri (par fusion, tri rapide )
    Manipuler des ensembles à travers des tableaux ou des listes :
    -  Opérations ensemblistes (union, intersection, différence).
    -  Appartenance ou non d’un élément.
    -  Existence de doublons.
    -  Compter les occurrences de chaque élément d’un alphabet fini ( tri par comptage).
    Avoir des notions de complexité algorithmique.
    Avoir des notions de preuve par invariant de boucle.

  • 28h 30min (9h cours magistraux - 6h travaux dirigés - 7h 30min travaux pratiques - 6h travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160211-INFO

  • Objectifs d'apprentissage

    -  Importer et manipuler des données 1d, 2d, nd.
    -  Résoudre des systèmes linéaires.
    -  Implémenter une méthode de résolution de systèmes linéaires.
    -  Connaître les opérations matricielles (produit scalaire, norme, projection, changement de base).
    -  Connaître les différents types de matrices (inversible, triangulaire, orthogonales, bande,...)
    -  Effectuer des transformations géométriques à l’aide d’opérations matricielles.
    -  Représenter des fonctions à l’aide d’un logiciel.

  • 27h (6h cours magistraux - 4h 30min travaux dirigés - 10h 30min travaux pratiques - 6h travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160212-MATA

Résultats d'apprentissage
  • Administrer un système (Linux, Windows)
  • Connaitre les problématiques du "bas niveau "
  • Administrer un système (Linux, Windows)
  • Connaitre les concepts et utiliser les outils liés aux différentes architectures matérielles
  • Objectifs d'apprentissage

    -  Connaître les différents modes de codage de l’information (entiers, nombres réels, caractères) et identifier les limites de ces codages et des opérations sur ces codages
    -  Faire le lien entre le codage de l’information, l’arithmétique binaire et l’architecture des systèmes numériques.
    -  Repérer les éléments fonctionnels d’un système numérique de traitement : des blocs fonctionnels à l’exécution d’un code exécutable sur une machine simple.
    -  Comprendre et écrire des routines simples en langage machine.

  • 28h 30min (10h 30min cours magistraux - 9h travaux dirigés - 6h travaux pratiques - 3h travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160221-INFO

  • Objectifs d'apprentissage

    -  Connaître les différents modes de codage de l’information (entiers, nombres réels, caractères) et identifier les limites de ces codages et des opérations sur ces codages
    -  Faire le lien entre le codage de l’information, l’arithmétique binaire et l’architecture des systèmes numériques.
    -  Repérer les éléments fonctionnels d’un système numérique de traitement : des blocs fonctionnels à l’exécution d’un code exécutable sur une machine simple.
    -  Comprendre et écrire des routines simples en langage machine.
    -  Maitriser un environnement UNIX (LINUX) d’un point de vue utilisateur : commandes de bases, les systèmes de fichiers (et protections), les redirections, les tubes, la gestion des processus, les variables.
    -  Ecrire des scripts simples exécutables sous Interpréteur de commandes

  • 25h 30min (4h 30min cours magistraux - 15h travaux pratiques - 6h travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160222-INFO

Résultats d'apprentissage
  • Représenter et modéliser un système, puis passer à la programmation
  • Mettre en place une interface homme-machine
  • Maîtriser les structures de données usuelles, les algorithmes afférents et leur complexité
  • Utiliser des concepts avancés de programmation
  • Maîtriser différents paradigmes de programmation
  • Mettre en place une interface homme-machine
  • Connaître les concepts abstraits de programmation et les architectures, les mettre en œuvre en pratique et les tester
  • Maîtriser les structures de données usuelles, leur mise en œuvre, les algorithmes afférents et leur complexité
  • Maîtriser les langages de programmation les plus répandus (C, C++, Java, Javascript, PHP, HTML CSS, Python, Scala, etc.) et les paradigmes associés
  • Maîtriser les structures de données usuelles, les algorithmes afférents et leur complexité
  • Connaître les différents paradigmes de programmation (impératif, objet, fonctionnel, concurrent, parallèle, etc.)
  • Objectifs d'apprentissage

    -  Connaître les concepts fondamentaux de la programmation objet : classe, instance, encapsulation, appel de méthodes
    -  Connaître la notation UML utilisée dans la définition de diagrammes de classes et diagramme d’instances
    -  Connaître la dynamique d’exécution d’un programme utilisant des objets : envoi de message, notion de receveur
    -  Utiliser des structures de données élémentaires (tableaux, listes) fournies sous la forme de classes
    -  Connaître la notation UML utilisée dans la définition de diagrammes de séquence et de collaboration
    -  Utiliser la notion d’exception sous sa forme objet
    -  Définir des tests unitaires sur des classes simples

  • 21h (4h 30min cours magistraux - 6h travaux dirigés - 10h 30min travaux pratiques)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160231-INFO

  • Objectifs d'apprentissage

    -  Connaître les concepts fondamentaux de la programmation objet : classe, instance, encapsulation, appel de méthodes
    -  Créer une classe simple en Java
    -  Créer une classe utilisant une structure de données élémentaire fournie sous la forme d’une classe
    -  Connaître la notation UML utilisée dans la définition de diagrammes de classes et diagramme d’instances
    -  Connaître une solution de création d’interface graphique
    -  Connaître la notion de complexité
    -  Connaître la notion d’automate

  • 27h (6h cours magistraux - 6h travaux dirigés - 10h 30min travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160232-INFO

Cours mineurs
Résultats d'apprentissage
  • Maîtriser les langages de programmation les plus répandus (C, C++, Java, Javascript, PHP, HTML CSS, Python, Scala, etc.) et les paradigmes associés
  • Objectifs d'apprentissage

    -  Comprendre l’architecture d’une page web
    -  Concevoir une page web à travers un langage de balisage HTML5
    -  Mettre en forme une page web avec des feuilles de style
    -  Utiliser des frameWorks CSS (exemple : Bootstrap)

  • 25h 30min (6h cours magistraux - 15h travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160241-INFO

  • Objectifs d'apprentissage

    -  Connaître les bases du langage javascript
    -  Interfacer une page web avec du code javascript
    -  Interagir avec l’utilisateur à travers les évènements et les fonctions de rappel.

  • 27h (7h 30min cours magistraux - 15h travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160242-INFO

Cours transversaux
Résultats d'apprentissage
  • Prouver la validité d'un code
  • 18h (18h travaux dirigés)
  • 2 crédits ECTS
  • Code de l'EC

    DC-160201-ANG

  • 14h (14h travaux pratiques)
  • 2 crédits ECTS
  • Code de l'EC

    C9-160202-INFU

Cours majeurs
Résultats d'apprentissage
  • Maitriser le langage SQL
  • Connaitre les concepts fondamentaux des bases de données
  • Connaitre les différents paradigmes des bases de données
  • Connaître une méthode numérique de calcul d'intégrales
  • Maitriser les bases de l'analyse et des statistiques
  • Objectifs d'apprentissage

    -  Connaître les notions de clés
    -  Maîtriser les bases du langage SQL (LDD)
    -  Maîtriser les bases du langage SQL (LMD)
    -  Connaître les opérations de l’algèbre relationnelle
    -  Maîtriser les bases du langage SQL (LID)
    -  Avoir de notions de Normalisation
    -  Maîtriser les bases de la conception de bases de données via le modèle Entité/Association.

  • 25h 30min (6h cours magistraux - 15h travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160311-INFO

  • Objectifs d'apprentissage

    -  Avoir des notions d’optimisation (dérivation, gradient, extremum, différences finies).
    -  Maîtriser les algorithmes de dichotomie continue, de descente de gradient (à pas fixe et adaptatif).
    -  Reconnaître et savoir résoudre un problème d’optimisation de type moindres carrés (Ex. : régression linéaire)
    -  Mettre en œuvre d’autres méthodes d’optimisation fournie par un logiciel.
    -  Connaître une méthode numérique de calcul d’intégrales.
    -  Mettre en œuvre d’autres méthodes d’intégration fournies par un logiciel.
    -  Connaître une méthode numérique d’interpolation 1d et 2d.
    -  Mettre en œuvre d’autres méthodes d’interpolation fournies par un logiciel.

  • 27h (7h 30min cours magistraux - 15h travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160312-INFO

Résultats d'apprentissage
  • Connaitre les algorithmes classiques relatifs aux structures de données usuelles
  • Maîtriser les langages de programmation les plus répandus (C, C++, Java, Javascript, PHP, HTML CSS, Python, Scala, etc.) et les paradigmes associés
  • Maîtriser les langages de programmation les plus répandus (C, C++, Java, Javascript, PHP, HTML CSS, Python, Scala, etc.) et les paradigmes associés
  • Objectifs d'apprentissage

    -  Comprendre la gestion de la mémoire en langage C
    -  Connaître la librairie standard du langage C
    -  Compiler et relier plusieurs fichiers sources
    -  Utiliser une librairie externe
    -  Connaître les types basiques du langage C et les agglomérats
    -  Comprendre l’implémentation des structures de données classiques
    -  Interfacer le langage C et d’autres langages
    -  Utiliser la compilation croisée

  • 27h (7h 30min cours magistraux - 15h travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160321-INFO

  • Objectifs d'apprentissage

    -  Comprendre la gestion de la mémoire en langage C
    -  Connaître la librairie standard du langage C
    -  Compiler et relier plusieurs fichiers sources
    -  Utiliser une librairie externe
    -  Connaître les types basiques du langage C et les agglomérats
    -  Comprendre l’implémentation des structures de données classiques
    -  Interfacer le langage C et d’autres langages
    -  Utiliser la compilation croisée

  • 27h (7h 30min cours magistraux - 15h travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160322-INFO

Résultats d'apprentissage
  • Comprendre l'implémentation des structures de données classiques
  • Maîtriser les structures de données usuelles, les algorithmes afférents et leur complexité
  • Maîtriser les structures de données usuelles, leur mise en œuvre, les algorithmes afférents et leur complexité
  • Théoriser l'architecture d'un système, modéliser, représenter les différents composants logiciels et mettre en œuvre leur programmation
  • Maîtriser les langages de programmation les plus répandus (C, C++, Java, Javascript, PHP, HTML CSS, Python, Scala, etc.) et les paradigmes associés
  • Objectifs d'apprentissage

    -  Mettre en œuvre des structures de données en langage objet : Pile, File, File prioritaire.
    -  Concevoir des algorithmes qui parcourent les structures de données et évaluer leurs complexités.
    -  Effectuer des tests unitaires efficaces.
    -  Comprendre la dissociation Modèle Contrôle - Vue
    -  Traduire à partir d’un écrit, un principe de traitement en algorithme puis programme.
    -  Maitriser le langage Java

  • 27h (3h cours magistraux - 6h travaux dirigés - 12h travaux pratiques - 6h travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160331-INFO

  • Objectifs d'apprentissage

    -  Mettre en œuvre des structures de données en langage objet : Liste. Arbre Binaire, ABR
    -  Concevoir des algorithmes récursifs qui parcourent les structures de données et évaluer leurs complexités.
    -  Effectuer des tests unitaires efficaces.
    -  Comprendre la dissociation Modèle Contrôle - Vue
    -  Traduire à partir d’un écrit, un principe de traitement en algorithme puis programme.
    -  Mobiliser ses connaissances et ses acquis sur un problème
    -  Utiliser les structures de données Java

  • 27h (3h cours magistraux - 6h travaux dirigés - 12h travaux pratiques - 6h travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160332-INFO

Cours mineurs
Résultats d'apprentissage
  • Utiliser des bases de données
  • Connaître les concepts abstraits de programmation et les architectures, les mettre en œuvre en pratique et les tester
  • Maîtriser les langages de programmation les plus répandus (C, C++, Java, Javascript, PHP, HTML CSS, Python, Scala, etc.) et les paradigmes associés
  • Connaitre les concepts et utiliser les outils liés aux différentes architectures matérielles
  • Objectifs d'apprentissage

    -  Connaître la syntaxe du langage PHP pour la programmation des structures de contrôle classiques.
    -  Connaître le mécanisme de classes, d’héritage,
    des interfaces et des traits en PHP.
    -  Communications élémentaires client-serveur
    -  Notion d’accès aux bases de données via PHP
    -  Utiliser le mécanisme d’auto-chargement des fichiers en PHP.
    -  Utiliser les méthodes magiques en PHP.
    -  Utiliser un mécanisme de gestion des dépendances à travers par exemple de composer et de packagist.

  • 25h 30min (6h cours magistraux - 15h travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160341-INFO

  • Objectifs d'apprentissage

    -  Connaître la syntaxe du langage PHP pour la programmation des structures de contrôle classiques.
    -  Connaître le mécanisme de classes, d’héritage,
    des interfaces et des traits en PHP.
    -  Communications élémentaires client-serveur
    -  Notion d’accès aux bases de données via PHP
    -  Utiliser le mécanisme d’auto-chargement des fichiers en PHP.
    -  Utiliser les méthodes magiques en PHP.
    -  Utiliser un mécanisme de gestion des dépendances à travers par exemple de composer et de packagist.

  • 27h (7h 30min cours magistraux - 15h travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160342-INFO

Cours transversaux
Résultats d'apprentissage
  • Connaître les paradigmes des grandes classes de conception logicielle
  • Représenter et modéliser un système, puis passer à la programmation
  • Mesurer la qualité du code, d'un logiciel
  • Tester un code, un logiciel
  • Tester et mesurer la qualité d'un code, d'un logiciel
  • Connaître les différents paradigmes de programmation (impératif, objet, fonctionnel, concurrent, parallèle, etc.)
  • Théoriser l'architecture d'un système, modéliser, représenter les différents composants logiciels et mettre en œuvre leur programmation
  • 18h (18h travaux dirigés)
  • 2 crédits ECTS
  • Code de l'EC

    DC-160301-ANG

  • 10h (10h travaux dirigés)
  • 1 crédit ECTS
  • Code de l'EC

    HC-160302-MPP

  • Objectifs d'apprentissage

    Construction d’un cahier des charges
    -  Exprimer les exigences d’un système et les classifier (fonctionnelles/non-fonctionnelles)
    -  Construire un cahier des charges structuré (cas d’utilisations/diagrammes UML des scénarios)
    Conception
    -  Connaître les paradigmes des grandes classes de conception logicielle (conception objet)
    -  Passer d’une conception détaillée à la programmation (du diagramme de classes au code)
    Métrique du logiciel
    -  Identifier les facteurs de qualité du logiciel
    -  Comprendre l’impact des facteurs de qualité sur la conception
    Test du logiciel
    -  Exprimer les unitaires et les appliquer
    -  Utiliser des API de test unitaire propres aux langages (Junit, Nunit ...)

  • 21h (6h cours magistraux - 3h travaux dirigés - 12h travaux pratiques)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160303-INFO

Cours majeurs
Résultats d'apprentissage
  • Acquérir des données, les analyser mathématiquement, puis mettre en œuvre des algorithmes adaptés au traitement de ces données et les visualiser
  • Acquérir, traiter, analyser et visualiser des données
  • Théoriser l'architecture d'un système, modéliser, représenter les différents composants logiciels et mettre en œuvre leur programmation
  • Résoudre des problèmes d'analyse de données (ordonnancement et classification) par des méthodes adaptées et produire une visualisation du résultat
  • Décrire et représenter un jeu de données
  • Résoudre des problèmes à travers la mise en œuvre d'algorithmes spécifiques, en particulier en analyse de donnée, traitement de signal, pour les plateformes spécifiques
  • Objectifs d'apprentissage

    -  Avoir des notions de modélisation et connaître UML
    -  Faire une modélisation structurelle avec UML (vue statique)
    -  Faire une modélisation comportementale avec UML (vue dynamique)
    -  Faire une modélisation des besoins avec UML (vue fonctionnelle)
    -  Etude de cas

  • 22h 30min (4h 30min cours magistraux - 7h 30min travaux dirigés - 7h 30min travaux pratiques - 3h travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160411-INFO

  • Objectifs d'apprentissage

    -  Décrire et représenter un jeu de données.
    -  Choisir une méthode d’analyse de données appliquée à un problème.
    -  Résoudre un problème de clustering
    -  Résoudre un problème de classification
    -  Résoudre un problème de régression
    -  Analyser et comparer des résultats

  • 25h (9h travaux dirigés - 9h travaux pratiques - 7h travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160412-INFO

Résultats d'apprentissage
  • Maitriser et mettre en œuvre les concepts relatifs aux réseaux
  • Objectifs d'apprentissage

    -  Avoir une compréhension du mécanisme de couches du modèle OSI et protocole
    -  Maitriser les couches : Liaison de Données, Réseau, Transport
    -  Utiliser des protocoles réseaux (UDP et TCP) en Java
    -  Connaitre l’adressage IPv4 IPv6

  • 27h (6h cours magistraux - 4h 30min travaux dirigés - 12h travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160421-INFO

  • Objectifs d'apprentissage

    -  Connaître les limites des débits sur des réseaux
    -  Mettre en place un routage statique IPv4
    -  Avoir des notions sur les protocoles POP3, SMTP, IMAP
    -  Connaître les notions relatives à la couche physique

  • 27h (6h cours magistraux - 4h 30min travaux dirigés - 12h travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160422-INFO

Résultats d'apprentissage
  • Connaître les concepts abstraits de programmation et les architectures, les mettre en œuvre en pratique et les tester
  • Connaître les différents paradigmes de programmation (impératif, objet, fonctionnel, concurrent, parallèle, etc.)
  • Administrer un système (Linux, Windows)
  • Comprendre les concepts des architectures matérielles
  • Connaitre et utiliser les architectures parallèles et distribuées
  • Administrer un système (Linux, Windows)
  • Objectifs d'apprentissage

    -  Gérer les appels système
    -  Comprendre les entrées-sorties et les fichiers
    -  Gérer les processus (création, ordonnancement...)
    -  Acquérir des notions de temps réel
    -  Gérer les signaux.
    -  Faire communiquer des processus (IPC : files de messages, mémoire partagée, sémaphores)
    -  Gérer les processus légers (threads- programmation multithread)
    -  Gérer la mémoire (physique/virtuelle, swap, gestion MMU)
    -  Administrer les systèmes Windows

  • 36h (7h 30min cours magistraux - 6h travaux dirigés - 16h 30min travaux pratiques - 6h travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160431-INFO

  • Objectifs d'apprentissage

    -  Connaître la sémantique de la relation d’héritage simple, ses utilisations (généralisation/spécialisation) et sa notation UML et la notion de polymorphisme.
    -  Utiliser la relation d’héritage simple pour concevoir une hiérarchie de classes permettant la réutilisation de code.
    -  Connaître la notion de classe partiellement implémentée et dérivable : classe abstraite
    -  Connaître la notion d’interface permettant un découplage entre classes
    -  Connaître la notion de type générique et l’utilisation de classes conteneurs
    -  Connaître une bibliothèque de classes conteneurs (Collections avec Java) reposant sur des mécanismes d’abstraction avancés : types génériques, algorithmes polymorphiques, notion d’itérateur

  • 26h (4h 30min cours magistraux - 4h 30min travaux dirigés - 12h travaux pratiques - 5h travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160432-INFO

Cours mineurs
Résultats d'apprentissage
  • Connaître les concepts abstraits de programmation et les architectures, les mettre en œuvre en pratique et les tester
  • Connaitre les concepts et utiliser les outils liés aux différentes architectures matérielles
  • Objectifs d'apprentissage

    -  Mettre en pratique les langages Javascript et PHP au travers d’API de haut niveau
    -  Programmer avec ces API côté client et/ou côté serveur
    -  Utiliser des API et des systèmes de templates pour le développement Web
    -  Utiliser et concevoir des API REST
    -  Usage de framework PHP et JavaScript (par exemple : Angular, Silex, Symfony, React, Enyojs, ...)

  • 27h (7h 30min cours magistraux - 15h travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160441-INFO

  • Objectifs d'apprentissage

    -  Mettre en pratique les langages Javascript et PHP au travers d’API de haut niveau
    -  Programmer avec ces API côté client et/ou côté serveur
    -  Utiliser des API et des systèmes de templates pour le développement Web
    -  Utiliser et concevoir des API REST
    -  Usage de framework PHP et JavaScript (par exemple : Angular, Silex, Symfony, React, Enyojs, ...)

  • 27h (7h 30min cours magistraux - 15h travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160442-INFO

Cours transversaux
  • 18h (18h travaux dirigés)
  • 2 crédits ECTS
  • Code de l'EC

    DC-160401-ANG

  • 13h 30min (4h 30min cours magistraux - 3h travaux dirigés - 6h travaux pratiques)
  • 2 crédits ECTS
  • Code de l'EC

    C5-160402-ODP

Cours majeurs
Résultats d'apprentissage
  • Maitriser le langage SQL
  • Connaitre les concepts fondamentaux des bases de données
  • Connaitre les différents paradigmes des bases de données
  • Acquérir des données, les analyser mathématiquement, puis mettre en œuvre des algorithmes adaptés au traitement de ces données et les visualiser
  • Maitriser les bases des statistiques inférentielles
  • Maitriser les bases des statistiques inférentielles
  • Maitriser les bases de l'analyse et des statistiques
  • Objectifs d'apprentissage

    -  Avoir de notions de Normalisation
    -  Maîtriser les bases de la conception de bases de données via le modèle Entité/Association.
    -  Concevoir et exploiter une base de données
    -  Avoir des notions de diagramme de classes (UML)
    -  Maîtriser la notion de transaction
    -  Avoir des notions de contrôle d’accès (vues et droits)

  • 25h 30min (7h 30min cours magistraux - 15h travaux pratiques - 3h travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160511-INFO

  • Objectifs d'apprentissage

    -  Obtenir des estimateurs et les qualifier
    -  Maitriser les notions de risque et de précision
    -  Formuler des hypothèses
    -  Mettre en œuvre des tests statistiques appropriés

  • 30h (7h 30min cours magistraux - 7h 30min travaux dirigés - 7h 30min travaux pratiques - 7h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160512-INFO

Résultats d'apprentissage
  • Connaitre les concepts et utiliser les outils liés aux différentes architectures matérielles
  • Maitriser et mettre en œuvre les concepts relatifs aux réseaux
  • Être conscient des enjeux de la sécurité, en particulier dans les réseaux
  • Connaitre et utiliser les architectures parallèles et distribuées
  • Comprendre les concepts des architectures matérielles
  • Objectifs d'apprentissage

    -  Connaître comment sont organisés les réseaux de machines, leurs façons de communiquer (protocoles) afin d’en appréhender les failles potentielles.
    concevoir et configurer un réseau TCP/IP (aspect software et hardware).
    -  Connaître quels sont les organes de protection à disposition dans un réseau, leur domaine d’action et savoir les mettre en œuvre (écriture et implémentation de règles de filtrage IP).
    -  Concevoir et administrer un internet sûr(synthèse adressage, routage, protection).

  • 27h (6h cours magistraux - 4h 30min travaux dirigés - 12h travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160521-INFO

  • Objectifs d'apprentissage

    -  Connaitre les structures internes d’accélération des traitements dans les ordinateurs
    -  Comprendre les notions d’approche RISC, de parallélisme, d’unités de traitements, de hiérarchie mémoire, de multicoeurs.

  • 18h (6h cours magistraux - 4h 30min travaux dirigés - 4h 30min travaux pratiques - 3h travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160522-INFO

Résultats d'apprentissage
  • Calculer des complexités dans des cas simples et comparer différents algorithmes
  • Connaitre les algorithmes classiques relatifs aux structures de données usuelles
  • Comprendre l'implémentation des structures de données classiques
  • Maîtriser les structures de données usuelles, les algorithmes afférents et leur complexité
  • Analyser la documentation d'une bibliothèque
  • Prouver la validité d'un code
  • Maîtriser les structures de données usuelles, les algorithmes afférents et leur complexité
  • Objectifs d'apprentissage

    Calculer la complexité d’un algorithme sur un tableau ou une liste, un arbre :
    -  Connaître les notations de Landau
    -  Connaître et savoir illustrer les notions de pire des cas, meilleur des cas, cas moyen d¿un algorithme.
    -  Connaître les règles de calcul pour le pire des cas.
    Notions de preuves de correction, d’ invariants de boucle.
    Calculer la complexité d’un algorithme récursif :
    -  Formulation par une équation de récurrence
    -  Résolution par substitution, par la méthode générale.
    Avoir des notions de la complexité d’un problème.
    Comparer des algorithmes résolvant le même problème.
    Avoir des notions de la réduction d’un problème à un autre.
    Analyser la documentation d’une bibliothèque intégrant des structures de données (Ex : QT, Java, ...)

  • 30h (10h 30min cours magistraux - 7h 30min travaux dirigés - 4h 30min travaux pratiques - 7h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160531-INFO

  • Objectifs d'apprentissage

    Utiliser des structures de données avancées :
    -  Dictionnaires
    -  Arbres N-aires
    -  Arbres équilibrés (AVL / Rouge et Noir)
    -  Graphes

  • 30h (7h 30min cours magistraux - 15h travaux pratiques - 7h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160532-INFO

Cours mineurs
Résultats d'apprentissage
  • Connaitre les concepts et utiliser les outils liés aux différentes architectures matérielles
  • Maîtriser les langages de programmation les plus répandus (C, C++, Java, Javascript, PHP, HTML CSS, Python, Scala, etc.) et les paradigmes associés
  • Connaître les différents paradigmes de programmation (impératif, objet, fonctionnel, concurrent, parallèle, etc.)
  • Objectifs d'apprentissage

    -  Connaître les mécanismes fondamentaux de la programmation fonctionnelle : différents types de récursivité, notion de pureté, fonction comme entité de première classe, application partielle, clôtures.
    -  Comprendre l’utilisation de fonctions d’ordre supérieur (map, filter foldr, etc.) et l’appariement de motifs (pattern matching) et savoir implémenter des algorithmes en utilisant ces fonctions.
    -  Ecrire des programmes par composition de fonctions
    -  Connaître certaines caractéristiques du langage Scala mêlant programmation objet et programmation fonctionnelle

  • 28h 30min (6h cours magistraux - 6h travaux dirigés - 10h 30min travaux pratiques - 6h travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160541-INFO

  • Objectifs d'apprentissage

    -  Ecrire des programmes concurrents en utilisant différents modèles de programmation : mémoire partagée, canaux de communication, acteurs, futurs.
    -  Connaître les problèmes inhérents à chaque modèle de programmation concurrente
    -  Connaître des mécanismes du langage Java permettant la programmation concurrente.

  • 28h 30min (6h cours magistraux - 6h travaux dirigés - 10h 30min travaux pratiques - 6h travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160542-INFO

Résultats d'apprentissage
  • Maitriser les microcontrôleurs
  • Comprendre les concepts des architectures matérielles
  • Connaitre les concepts et utiliser les outils liés aux différentes architectures matérielles
  • Objectifs d'apprentissage

    -  Programmer un microcontrôleur en utilisant un IDE
    -  Pouvoir mettre en oeuvre des E/S numériques "tout ou rien" et utiliser des masques logiques et opérations logiques
    -  Comprendre le concept d’interruption
    -  Mettre en œuvre une routine d’interruption
    -  Utilisation des ressources internes du microcontrôleur (par ex. Timer)

  • 31h 30min (4h 30min cours magistraux - 7h 30min travaux dirigés - 12h travaux pratiques - 7h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160551-INFO

  • Objectifs d'apprentissage

    -  Utiliser des Entrées/Sorties étendues (convertisseur A/N, liaisons séries)
    -  Mettre en œuvre un affichage évolué (LCD, LEDs)
    -  Interfacer des composants externes

  • 27h (6h cours magistraux - 6h travaux dirigés - 9h travaux pratiques - 6h travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160552-INFO

Résultats d'apprentissage
  • Acquérir des données, les analyser mathématiquement, puis mettre en œuvre des algorithmes adaptés au traitement de ces données et les visualiser
  • Acquérir, traiter, analyser et visualiser des données
  • Maitriser les bases de l'algèbre linéaire
  • Résoudre des problèmes à travers la mise en œuvre d'algorithmes spécifiques, en particulier en analyse de donnée, traitement de signal, pour les plateformes spécifiques
  • Connaitre les concepts et utiliser les outils liés aux différentes architectures matérielles
  • Objectifs d'apprentissage

    Traitement de l’information :
    -  Comprendre l’ensemble des étapes d’une chaine d’acquisition et de traitement du signal : capture, échantillonnage, CAN/CNA, traitement numérique
    -  Mettre en œuvre les outils mathématiques de bases d’analyse spectrale
    -  Connaître les choix qui conditionnent une « bonne » informatisation des données.
    -  Développer une analyse critique sur la validité des données acquises (impactant la validité des modèles de comportements établis a posteriori)
    -  Comprendre la corrélation, la convolution et le filtrage fréquentiel
    -  Construire des algorithmes de traitements du signal : filtrage, détection, reconnaissance (...).
    -  Mettre en œuvre ces algorithmes sur des données issues d’un smartphone (accéléromètre, gyroscope, gps, ...)

  • 27h (6h cours magistraux - 6h travaux dirigés - 10h 30min travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160561-INFO

  • Objectifs d'apprentissage

    Programmation, Traitement du signal et objets connectés :
    -  Comprendre les notions de bande spectrale et de débit numérique dans une chaine de communication : codage et modulation des données (son, vidéo, data)
    -  Comprendre les couches basses des protocoles réseaux pour l’IoT :
    réseaux courte portée (domotique et marché des wearables grand public) : bluetooth Low Energy, wifi, Z-Wave, NFC, zigbee, Enocean
    réseaux longue portée (entreprises, smart cities) : sigfox, lora, GSM, 4G, 5G
    -  Appliquer les méthodes de traitement du signal pour les grands volumes de données (traitement batch et en streaming avec Apache Spark ou Storm). Travail en autonomie

  • 27h (6h cours magistraux - 6h travaux dirigés - 10h 30min travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160562-INFO

Cours transversaux
Résultats d'apprentissage
  • Connaître les paradigmes des grandes classes de conception logicielle
  • Représenter et modéliser un système, puis passer à la programmation
  • Mesurer la qualité du code, d'un logiciel
  • Tester un code, un logiciel
  • Tester et mesurer la qualité d'un code, d'un logiciel
  • Connaître les différents paradigmes de programmation (impératif, objet, fonctionnel, concurrent, parallèle, etc.)
  • Théoriser l'architecture d'un système, modéliser, représenter les différents composants logiciels et mettre en œuvre leur programmation
  • 18h (18h travaux dirigés)
  • 2 crédits ECTS
  • Code de l'EC

    DC-160501-ANG

  • 30h (7h 30min cours magistraux - 4h 30min travaux dirigés - 18h travaux pratiques)
  • 4 crédits ECTS
  • Code de l'EC

    C5-160502-INFO

Cours majeurs
Résultats d'apprentissage
  • Utiliser des bases de données
  • Maitriser le langage SQL
  • Connaitre les concepts fondamentaux des bases de données
  • Connaitre les différents paradigmes des bases de données
  • Visualiser des données scientifiques
  • Acquérir des données, les analyser mathématiquement, puis mettre en œuvre des algorithmes adaptés au traitement de ces données et les visualiser
  • Être conscient des enjeux de la sécurité, en particulier dans les réseaux
  • Acquérir, traiter, analyser et visualiser des données
  • Résoudre des problèmes d'analyse de données (ordonnancement et classification) par des méthodes adaptées et produire une visualisation du résultat
  • Objectifs d'apprentissage

    -  Maîtriser la notion de transaction
    -  Avoir des notions de contrôle d’accès (vues et droits)
    -  Mettre en production une base de données répliqué, répartie.
    -  Avoir des notions d’optimisation et d’indexation.
    -  Accéder aux données d’une base à travers un langage de programmation (JDBC), en particulier maitriser les bases de contraintes dynamique
    -  Connaitre les différents paradigmes des bases de données NoSQL.
    -  Utiliser une base de données NoSQL

  • 27h (7h 30min cours magistraux - 15h travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160611-INFO

  • Objectifs d'apprentissage

    -  Représenter des données scalaires (points) issues de divers domaines en 2D ou 3D pour permettre et faciliter leur interprétation
    -  Représenter des données vectorielles (vecteurs) issues de divers domaines en 2D ou 3D pour permettre et faciliter leur interprétation Savoir appréhender les logiciels de visualisation scientifique (VTK , Spyder, ScalaLab, CloudCompare,...)

  • 27h (6h cours magistraux - 4h 30min travaux dirigés - 12h travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160612-INFO

Résultats d'apprentissage
  • Maitriser les problématiques liées à la sécurité
  • Connaitre les concepts et utiliser les outils liés aux différentes architectures matérielles
  • Objectifs d'apprentissage

    -  Etre conscient des enjeux de la sécurité pour les entreprises
    -  Comprendre qu’il est risqué de protéger soit même un logiciel, plutôt que de faire référence à des outils éprouvés (Reverse Engineering en action). Savoir sécuriser en conséquence.
    -  Comprendre qu’il existe des failles techniques / fonctionnelles dans les logiciels et qu’elles sont exploitées pour concevoir des attaques (faille logicielle, exploit).
    -  Maîtriser un développement sans failles (réduction/bonnes pratiques)
    -  Savoir et comprendre ce qu’est un virus, son mécanisme d’attaque (modus operandi), ses stratégies de diffusions et qu’il existe des outils pour les concevoir. - Savoir programmer un virus.
    -  Savoir et comprendre comment fonctionne un anti-virus afin de mieux en appréhender les limites.

  • 27h (6h cours magistraux - 4h 30min travaux dirigés - 12h travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160621-INFO

  • Objectifs d'apprentissage

    -  Avoir des notions de Cloud - Platform as a Service, Infrastructure as a Service, Software as a Service
    -  Avoir des notions de Plan 9 et implication sur les systèmes d’exploitation
    -  Connaitre les bases de Corba, Mise en œuvre Remote Method Invocation (RMI)
    -  Avoir des notions d’OpenStack, Container

  • 27h (6h cours magistraux - 4h 30min travaux dirigés - 12h travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160622-INFO

Résultats d'apprentissage
  • Mettre en place une interface homme-machine
  • Maîtriser les langages de programmation les plus répandus (C, C++, Java, Javascript, PHP, HTML CSS, Python, Scala, etc.) et les paradigmes associés
  • Identifier les étapes de la compilation : analyse lexicale, syntaxique et sémantique et génération de code
  • Utiliser des automates et des expressions régulières
  • Enumérer les différents types de grammaire et les tables d'analyse
  • Manipuler des outils de génération de code
  • Objectifs d'apprentissage

    -  Identifier les étapes de la compilation : analyse lexicale, syntaxique et sémantique et génération de code
    -  Utiliser des automates et des expressions régulières
    -  Enumérer les différents types de grammaire et les tables d’analyse
    -  Manipuler des outils de génération de code

  • 28h 30min (6h cours magistraux - 4h 30min travaux dirigés - 12h travaux pratiques - 6h travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160631-INFO

  • Objectifs d'apprentissage

    -  Connaître les paradigmes d’interfaces homme-machine
    -  Maîtriser les mécanismes de la programmation événementielle
    -  Faire une création déclarative d’interfaces homme-machine
    -  Avoir des notions d’ergonomie du logiciel

  • 27h 30min (7h 30min cours magistraux - 15h travaux pratiques - 5h travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160632-INFO

Cours mineurs
Résultats d'apprentissage
  • Maîtriser les langages de programmation les plus répandus (C, C++, Java, Javascript, PHP, HTML CSS, Python, Scala, etc.) et les paradigmes associés
  • Maîtriser différents paradigmes de programmation
  • Maîtriser les langages de programmation les plus répandus (C, C++, Java, Javascript, PHP, HTML CSS, Python, Scala, etc.) et les paradigmes associés
  • Connaître les différents paradigmes de programmation (impératif, objet, fonctionnel, concurrent, parallèle, etc.)
  • Connaitre et utiliser les architectures parallèles et distribuées
  • Connaitre les concepts et utiliser les outils liés aux différentes architectures matérielles
  • Objectifs d'apprentissage

    -  Connaître les problématiques de répartition, parallélisme par envoi de messages, multi-coeur, architectures logicielles réparties
    -  Utiliser des architectures Multi-processeurs / Multi-coeurs
    -  Avoir des notion de Systèmes répartis, Virtualisation, Platform as a Service, Infrastructure as a Service, Software as a Service

  • 27h (6h cours magistraux - 4h 30min travaux dirigés - 12h travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160641-INFO

  • Objectifs d'apprentissage

    Maitriser les bases du développement parallèle et comprendre les mécanismes de traitement SISD (Single Instruction Single Data), SIMD (Single Instruction Single Data), MIMD (Single Instruction Single Data) et du fonctionnement d’une mémoire distribuée. Amélioration des performances et limitations.
    Introduction au Message Passing Interface et à OpenMPI
    Introduction à CUDA et PyCUDA

  • 27h (6h cours magistraux - 4h 30min travaux dirigés - 12h travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160642-INFO

Résultats d'apprentissage
  • Représenter et modéliser un système, puis passer à la programmation
  • Acquérir et traiter des signaux en utilisant des structures et algorithmes adaptés
  • Mettre en place une interface homme-machine
  • Développer pour des plateformes spécifiques
  • Utiliser des concepts avancés de programmation
  • Développer pour des plateformes spécifiques
  • Développer pour des plateformes spécifiques
  • Résoudre des problèmes de traitement de signal
  • Mettre en place une interface homme-machine
  • Développer pour des plateformes spécifiques
  • Maîtriser les structures de données usuelles, leur mise en œuvre, les algorithmes afférents et leur complexité
  • Maîtriser les langages de programmation les plus répandus (C, C++, Java, Javascript, PHP, HTML CSS, Python, Scala, etc.) et les paradigmes associés
  • Maîtriser les structures de données usuelles, les algorithmes afférents et leur complexité
  • Théoriser l'architecture d'un système, modéliser, représenter les différents composants logiciels et mettre en œuvre leur programmation
  • Résoudre des problèmes de traitement de signal
  • Maitriser les microcontrôleurs
  • Objectifs d'apprentissage

    Contexte de développement mobile :
    -  Installer et utiliser un environnement de développement pour la programmation native et hybride
    -  Connaître les technologies et les contraintes des mobiles
    -  Comprendre et savoir utiliser une interface de programmation applicative (API), un plugin, un kit de développement (SDK), un outil de cross-compilation
    -  Générer et gérer les signatures pour les applications mobiles : signature de code, signature client-serveur pour les notifications, profil de provisionnement
    -  Apprendre à penser une application adaptée aux contraintes de mobilité
    -  Connaître les modes d’association et d’interaction entre objets/montres connecté(e)s et smartphones
    Développement d’applications mobiles natives pour iOS :
    -  Maitriser les langages de programmation Objective-C et Swift, le SDK et l’interface de programmation Cocoa Touch, et quelques API (notamment de géolocalisation)
    -  Maitriser l’environnement de développement XCode
    -  Manipuler les éléments graphiques d’interface
    -  Connaître et appliquer les patterns objets principaux
    -  Comprendre les contraintes de développement d’une application duale : smartphone- montre connectée

  • 22h 30min (6h cours magistraux - 6h travaux dirigés - 10h 30min travaux pratiques)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160651-INFO

  • Objectifs d'apprentissage

    Développement d’applications mobiles natives pour android. Développement d’applications hybrides :
    -  Utiliser java dans un contexte de développement mobile (pour android)
    -  Comprendre le développement d’applications hybrides avec des frameworks dédiés.
    Réalisation d’un projet (Travail en autonomie) :
    -  Maitriser la capture et l’interprétation des signaux/images/sons issus des capteurs
    -  Choisir, sur des critères objectifs, les structures de données et construire les algorithmes les mieux adaptés à un problème donné
    -  Utiliser les méthodes agiles pour le développement de solutions en mode collaboratif

  • 34h 30min (6h cours magistraux - 6h travaux dirigés - 10h 30min travaux pratiques - 12h travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160652-INFO

Résultats d'apprentissage
  • Résoudre des problèmes de traitement de signal
  • Résoudre des problèmes d'analyse de données (ordonnancement et classification) par des méthodes adaptées et produire une visualisation du résultat
  • Résoudre des problèmes de traitement de signal
  • Maitriser les techniques de base de computer vision
  • Maitriser les techniques de base de computer vision
  • Objectifs d'apprentissage

    Traiter le "Bas niveau" avec des méthodes adaptées :
    -  convolution/corrélation
    -  filtrage élémentaire
    -  apprentissage de filtres
    Lister les méthodes de recherche par le contenu :
    -  Espaces couleurs
    -  classification
    -  Points d’intérêts
    -  Descripteurs
    Utiliser des méthodes de recalage 2D/3D :
    -  ICP
    -  Ransac
    -  Homographie
    Appliquer les techniques de computer vision à la vidéo surveillance
    Connaitre les bases des réseaux convolutionels

  • 27h (7h 30min cours magistraux - 15h travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160661-INFO

  • Objectifs d'apprentissage

    Traiter le "Bas niveau" avec des méthodes adaptées :
    -  convolution/corrélation
    -  filtrage élémentaire
    -  apprentissage de filtres
    Lister les méthodes de recherche par le contenu :
    -  Espaces couleurs
    -  classification
    -  Points d’intérêts
    -  Descripteurs
    Utiliser des méthodes de recalage 2D/3D :
    -  ICP
    -  Ransac
    -  Homographie
    Appliquer les techniques de computer vision à la vidéo surveillance
    Connaitre les bases des réseaux convolutionels

  • 27h (7h 30min cours magistraux - 15h travaux pratiques - 4h 30min travail en accompagnement)
  • 3 crédits ECTS
  • Code de l'EC

    C5-160662-INFO

Cours transversaux
Résultats d'apprentissage
  • Théoriser l'architecture d'un système, modéliser, représenter les différents composants logiciels et mettre en œuvre leur programmation
  • Résoudre des problèmes de traitement de signal
  • Maitriser les bases de la simulation de systèmes
  • Maitriser les bases de la simulation de systèmes
  • 18h (18h travaux dirigés)
  • 2 crédits ECTS
  • Code de l'EC

    DC-160601-ANG

  • Objectifs d'apprentissage

    -  Modéliser le fonctionnement d’un système par des outils complémentaires à ceux vu classiquement en informatique.
    -  Procéder à l’identification d’un système grâce à la connaissance de ses performances et de son comportement.
    -  Concevoir l’animation de l’objet contrôlé en réalité virtuelle afin d’illustrer concrètement la démarche établie.
    -  Programmer cette animation à l’aide de logiciels d’animation récents et reconnu (Blender etc.)

  • 32h (15h 30min cours magistraux - 4h 30min travaux dirigés - 12h travaux pratiques)
  • 2 crédits ECTS
  • Code de l'EC

    C5-160602-INFO

  • 2 crédits ECTS
  • Code de l'EC

    C5-160603-STAG

ET APRÈS

Secteurs d'activité

  • Banque, assurance
  • Informatique, Web, images, télécommunications

Métiers

-  Administrateur réseaux
-  Concepteur informatique
-  Développeur informatique
-  Formateur en informatique
-  Professeur des écoles
-  Webmestre, webdesigner

Faculté des Sciences et Technologies

avenue Michel Crépeau

17042 La Rochelle cedex 1

Envoyer un message

TROUVER UNE AUTRE FORMATION
Mis à jour le 8 décembre 2017
Informations présentées sous réserve de modifications