Cours du second semestre de la deuxième année

UE Informatique 4
EC “Algorithmique et structures de données 2”

Ce cours est la suite directe du cours éponyme au semestre précédent. Il s'agit de poursuivre l'études des algorithmes liés aux structures de données vues dans le cours précédent, et de démarrer l'étude d'autres types d'algorithmes, comme ceux liés au texte par exemple.

EC “Programmation orientée objet”

Depuis le début de la formation, les étudiant·es de la licence pratiquent la programmation orientée objet sous diverses formes tant ce paradigme est répandu. L'objectif de ce cours est la formalisation des concepts théoriques et pratiques du paradigme objet, ainsi que la mise en œuvre pratique de certains concepts plus avancés (patrons de conception).

EC “Systèmes et réseaux”

L'objectif de ce cours est l'apprentissage de la programmation système d'une part, et des modèles et de la programmation réseau (qui utilise elle-même la programmation système) d'autre part. Il s'agit de comprendre le fonctionnement de couches logicielles de bas niveau qui sont la plupart du temps abstraites, afin de ne pas se retrouver coincer lorsque des problèmes apparaissant au niveau applicatif ont leurs origines dans les couches inférieures du système.

UE Compétences transversales 4
EC “Histoire de l'informatique”

Ce cours a pour objectif de contextualiser la discpline informatique dans la société, autant historiquement que socialement ou environnementalement, afin de faire réfléchir les étudiant·es aux impacts de leur choix futurs en tant que développeur·euses informatiques. Pour cela, l'histoire de l'informatique est abordée sujet par sujet, et des parallèles sont faits avec l'actualité autant que possible.

EC “Restitution orale de connaissances”

Ce cours est couplé avec le cours d'“histoire de l'informatique”, il s'agit pour les étudiant·es de faire un exposé sur un sujet du cours qu'illes souhaitent approfondir, ou sur n'importe quel autre sujet ayant trait à l'histoire de l'informatique, ou aux rapports entre la technologie et la société. Si le sujet choisi le permet, une approche technocritique est encouragée.

UE Conception et programmation de jeux vidéo 4
EC “Programmation concurrente et réseau”

Ce cours présente par la pratique les fondements de la programmation parallèle, concurrente et distribuée. Il s'agit de gérer l'exécution de programmes, sur plusieurs processeurs de types homogènes et/ou hétérogènes, connectés par un bus ou par des interfaces réseaux, pour contribuer à un même résultat dans le cas de programmes multiprocesseurs ou interagir en temps réel dans le cas de jeux multijoueur·es.

EC “Synthèse d'images, animation, et sons”

Basé sur l'utilisation d'une API graphique bas niveau telle qu'OpenGL, cet enseignement a pour objectif d'étudier en détail diverses techniques d'éclairage de scènes 3D permettant de produire en temps réel des images de synthèse. D'autres types de rendus, tels que les rendus expressifs —anciennement appelés Non-Photo-Réalistes— seront abordés. Sur cette base, nous étudierons la représentation, le chargement et le traitement de modèles 3D statiques ou animés. Enfin, aussi bien l'interaction bilatérale avec le son que l'application de l'analyse fréquentielle du son à la synthèse d'images seront présentées, avec comme objectif, la réalisation d'une application “images & sons” (voire demoscene).