Semestre 5

Unité d’enseignement

Objectifs pédagogiques

Cours

TD

TP

ECTS

Introduction à la POO A partir des types de données abstraits réalisés en C et présentés pour montrer les insuffisances des langages de programmations “classique”, on introduit les concepts de base de la programmation orientée objets 20 20 21 7
Théorie des graphes Acquisition des notions de bases de la recherche opérationnelle et algorithmique dans les graphes et les arbres. Introduction à la théorie des langages, aux problèmes de traduction dirigée par la syntaxe, ainsi qu’à la compilation (problèmes posés et solutions existantes) 20 20 18 6
Système d’Exploitation et Programmation système Après un aperçu des principales caractéristiques de deux composants principaux d’un système d’exploitation, le système de gestion de fichiers et le système de gestion des processus, nous regarderons les principaux outils de communication entre des processus locaux (signaux, tubes, file de message) 14 14 15 5
Codage de l’information 10 10 9 3
Génie Logiciel 1 Ce module a pour principal but d’initier les futurs informaticiens aux problématiques du développement de logiciels de qualité. Il porte sur la définition des qualités attendus de tout logiciel et des moyens pour y parvenir. Cela passe nécessairement par l’acquisition de compétences en matière de cycle de développement (phases, activités, bonnes pratiques), en matière de gestion de projet (planification, suivi, etc.) et en matière technologiques (outils support aux activités citées). 10 8 9 3
MAN Programmation Mise A Niveau 6 5 9 2
Anglais Aider les étudiants à renforcer les compétences déjà apprises, donner des dispositifs pour une progression personnelle, et faire des exercices et évaluations autour de la communication orale et écrite concernant l’emploi et le monde du travail. 20 2
Ouverture (sport, culture, etc.) 20 2

Semestre 6

Unité d’enseignement

Objectifs pédagogiques

Cours

TD

TP

ECTS

POO en Java
  • Se servir aisément de plusieurs styles/paradigmes algorithmiques et de programmation (approches impérative, fonctionnelle, objet et multitâche)ainsi que plusieurs langages de programmation.
  • Appliquer des approches raisonnées de résolution de problèmes complexes par décompositions et/ou approximations successives et mettre en œuvre des méthodes d’analyse pour concevoir des applications et algorithmes à partir d’un cahier des charges partiellement donné.
  • Expliquer et documenter la mise en œuvre d’une solution technique.
6 18 21 6
Design Patterns Améliorer les compétences de concepteur des étudiants déjà formés à la POO

  • Introduire le concept de design pattern
  • Présenter différents patterns de conception (Stratégie, Commande, Etat, Adaptateur, Décorateur, Visiteur, Itérateur, Singleton, Fabrique Abstraite, etc.)
  • Etudier comment implémenter les design pattern en Java
  • Développer l’aptitude à appliquer les patterns de conception dans les programmes
6 21 4
Architectures logicielles pour le web Le Web est en enjeu majeur du monde d’aujourd’hui. De votre smartphone, à votre télé les technologies web sont partout. Le temps de la page personnelle en PHP est bien révolu : concevoir une application web professionnelle et maintenable est un métier à part entière.
Dans ce cours nous aborderons les bases réseaux du web (protocole HTTP, Websocket) ainsi que des notions d’architecture système. Nous verrons ensuite l’utilisation de Frameworks pour le développement Web et prendrons le cas d’usage du Framework Django avec le langage de programmation Python.
6 21 3
Interfaces Homme-Machine
  1. Conception centrée utilisateur
    • UX and UI design
    • modèles de conceptions
    • IHM et design
    • méthodologies d’analyse du besoin
    • prototypage
    • story-board
  2. Outils existants
    • Outils de développement
    • Visualisation d’informations
  3. Evaluation des interfaces
    • Critères ergonomiques
    • Questionnaires ouverts / fermés
    • Exemples : évaluation d’applications Web
  4. Techniques émergentes
    • interaction gestuelle
    • réalité augmentée et virtuelle
    • interfaces tangibles
    • interfaces collaboratives
    • surfaces tactiles
8 8 12 3
Langages & Compilation Le but de ce cours est double: d’abord, réaliser de A à Z un véritable compilateur, c’est-à-dire un programme qui traduit en code exécutable un code source écrit dans un langage de programmation défini à l’aide de règles syntaxiques et sémantiques. Ensuite, comprendre le fonctionnement des compilateurs/interpréteurs, jusqu’à ceux de dernière génération qui produisent du code parallèle performant pour des réseaux de machines multiprocesseurs. 8 8 12 3
Génie Logiciel 2 6 12 30 5
Stage en entreprise (ou Info & Droit) 2
Informatique et Droit (licences logicielles, etc.) 18 2
Anglais La communication en anglais: comprendre & rédiger des mails, la ponctuation en anglais, comprendre et laisser des messages sur une boîte vocale, choisir le moyen de communication le mieux adapté è chaque situation…
L’anglais au quotidien: voyager (prendre l’avion, le train …), faire les courses, la communication au travail, …
Rappels en grammaire: Quantifieurs & déictiques, les formes conditionnelles, prépositions dépendantes…
Savoir décrire une image
20 2
Ouverture (sport, culture, etc.) 20 2

 
 
 

PRE-PROFESSIONNEL
TRANSVERSAL ET LINGUISTIQUE
MISE A NIVEAU