La plupart de mes enseignements ont lieu dans le département Informatique Electronique Mécanique (IEM) de l'UFR sciences et technique à Dijon, mais aussi dans le département de mathématique de ce même UFR, au centre Condorcet (Une annexe de l'Université de Bourgogne délocalisé au Creusot --à environ 80 km de Dijon--), et au département informatique de l'IUT de Dijon. Ces enseignements sont résumés dans le tableau ci-dessous.
| Intitulé | Niveau | Nature | Volume | Années |
|---|---|---|---|---|
| Algorithmique | DEUG économie | TD/TP | 24/24h | 1998-2003 |
| Algorithmique | DEUG sciences | CM/TD/TP | 12/24/24h | 1998-2001 |
| Programmation C++ | LICENCE IUP-GEII | CM/TD/TP | 16/16/28h | 1998-2002 |
| Outils Informatiques | LICENCE IUP-GIB | CM/TD/TP | 20/20/40h | 2000-2002 |
| Introduction à UNIX | LICENCE | CM/TD/TP | 08/08/16h | 1997-2003 |
| Internet et sites Web | LICENCE | CM/TP | 10/10h | 2001-2004 |
| Sites Web dynamiques | LICENCE | CM/TP | 16/16h | 2001-2004 |
| Interface homme machine | LICENCE | CM/TD/TP | 12/24/24h | 1999-2004 |
| XML et XSLT | DESS | CM/TD/TP | 12/18/28h | 2002-2005 |
| Image de Synthèse | DEA | CM | 03h | 1999-2004 |
| Programmation Java | LICENCE | CM/TD/TP | 50h | 2004-2005 |
1) Algorithmique pour les étudiants en DEUG d'économie (Module InfoX): ce cours fait partie d'un module d'initiation destiné à des étudiants non informaticiens pour acquérir les bases de l'algorithmique. J'ai assuré cet enseignement avec ma collègue Irène Foucherot pendant plusieurs années, nous avons insisté sur les notions de base telles que les expressions conditionnelles, les itérations, et les enregistrements, avec beaucoup d'exemples et exercices faits dans un premier temps en algorithmiques (pseudo code) puis traduits et implémentés en langage Pascal.
2) Le deuxième enseignement d'algorithmique que j'ai assuré était destiné aux étudiants de DEUG Sciences et Technologies du centre Condorcet au Creusot, j'ai assuré cet enseignement pendant 3 années consécutives en faisant le déplacement au Creusot une ou deux fois par semaine. Cet enseignement était destiné à la fois aux étudiants en mention Sciences de la Matière (SM) et aux étudiants en mention Mathématiques, Informatique et Applications aux Sciences (MIAS), les deux promotions suivent le même cours, mais les exercices de TD/TP n'étaient pas tout à fait les mêmes, les exercices proposés aux SM étaient moins approfondis que ceux proposés aux MIAS. Le cours vise à donner aux étudiants les fondements de l'algorithmique et des structures de données (tests, itérations, enregistrements, fonctions, procédures, passages de paramètres, récursivités, etc.). Les premières années nous avons utilisé le langage pascal pour les exercices de TP, mais depuis 2001-2002 c'est le langage C++ qui est utilisé.
Une particularité de cet enseignement est que j'ai beaucoup discuté avec mes collègues Nadine Cullot, Joel Savelli et Albert Dipanda de l'équipe pédagogique qui assurent les cours d'algorithmique à Dijon, afin de rapprocher le plus possible le contenu de nos cours et partager les exercices proposés aux étudiants, cette volonté était motivée par l'objectif de donner un contenu homogène à tous les étudiants du DEUG de l'Université de Bourgogne. En effet, les étudiants Dijonnais et Creusotins qui réussissent le DEUG vont se retrouver dans les mêmes formations de licences à Dijon (vu qu'il n'y a aucune formation de licence au centre Condorcet du Creusot) et il est préférable qu'ils aient une même formation de base.
3) Licence LPST : L'objectif de cette licence est de fournir une formation Bac +3 générale à dominante scientifique, différente des cycles disciplinaires de mathématiques ou des sciences physiques et chimiques. Le cours de programmation en C++ pour cette licence permet de revenir sur les notions d'algorithmique vues en DEUG afin de les illustrer. Les notions de programmation orientée objet du langage C++ n'ont été abordées que brièvement à travers les classes et les méthodes.
4) Licence IUP GSI : Pour ce public souvent hétérogène, le but du cours était d'une part de d'introduire les bases de la programmation en C++ et d'autres part de montrer comment utiliser ce langage pour résoudre des problèmes liés à l'analyse numérique. Dans les exercices de TD/TP nous avons abordé des problèmes de résolution d'équations, de calcul d'intégrale, etc. J'ai assuré ce cours avec mon collègue Marc Neveu professeur au département IEM.
5) Licence IUP GEII : Vu l'objectif de cette formation, les étudiants ont des bases algorithmiques meilleures que ceux de la formation GSI ce qui a permis d'aller plus loin dans ce cours. Comme pour les GEII je partage ce cours avec mon collègue Marc Neveu. Nous avons couvert les notions de classes, d'héritage, de polymorphisme et fonctions virtuelles. Les classes et fonctions génériques ont également été abordées en fin du cours. Certains exercices de TD/TP ont également été orientés vers la modélisation et la résolution de problèmes d'analyse numérique.
6) Année spéciale IUT : Le contenu de cet enseignement a également été allégé car les étudiants de l'année spéciale sont d'origines très diverses avec des niveaux très variés en programmation, il a fallu plusieurs séances de rappel, dans lesquelles j'ai repris les bases de l'algorithmique, pour que tout le monde puisse suivre le cours. Nous avons vu les notions de la programmation orientée objet : classes, données membres, fonctions, membres et l'héritage. Les exemples de cours et les exercices de TD/TP étaient plus orientés vers l'apprentissage du langage que vers l'algorithmique proprement dites.
7) Cet enseignement a été assuré pour la licence professionnelle Réseaux et Télécommunications (LPRT) à l'IUT de Dijon pendant l'année universitaire 2004-2005. Dans une première partie d'environ 50h nous avons revu les concepts de bases de la programmation Java (classes, attributs, méthodes, interfaces, héritage), puis dans une deuxième partie (également d'environ 50h) nous avons abordé un contenu plus avancé tel que le développement d'interfaces homme machine en utilisant la librairie Swing et les outils java pour XML.
8) Ce cours, destiné aux étudiants de la licence des technologies mécaniques, vise à initier ces étudiants au système d'exploitation Unix afin qu'ils puissent utiliser les logiciels (de simulation et de calcul) installés sur des machines Unix. J'ai donc insisté plus sur les aspects pratiques des manipulations et les commandes de base qu'un utilisateur doit connaître pour utiliser confortablement une machine Unix. J'ai abordé : les sessions, le système de fichiers, les commandes de bases, les processus, le mail, les commandes de réseaux (ftp, telnet, etc.) avec beaucoup d'exercices de TP. J'ai également présenté l'interface avec le langage C (makefile, bibliothèque de fonctions) et ceci afin de préparer les étudiants aux modules de calcul envisagés au deuxième semestre.
9) J'assure ce cours pour la licence LPRT dans le cadre du module « Internet et Web », ce cours ne concerne que les sites Web statiques (un site Web statique est composé seulement d'un ensemble de pages HTML contenant des images et du texte), il est vu comme une brève préparation au cours de Web dynamique. Le cours rappelle les notions élémentaires (HTML, feuilles de style en cascade, javascript, etc.), discute la conception de sites Web en se basant sur une programmation « côté serveur » et montre la différence de cette conception par rapport à celle basée sur une programmation « côté serveur ».
10) J'assure ce cours pour la licence LPRT à l'IUT de Dijon et aussi pour le DESS BDIA au département IEM (avec un contenu un peu plus avancé), le but du cours est d'enseigner comment concevoir des applications client/serveur pour le Web afin de définir des sites Web dynamiques (un site Web dynamique est souvent supporté par une base de données avec laquelle il interagit pour créer dynamiquement des pages HTML ou XML répondant aux requêtes des internautes). Dans ce cadre nous revoyions la programmation CGI avec des exemples de scripts en langages C puis nous utilisons conjointement le serveur apache, le langage de script PHP et le SGBD MySQL pour mettre en place un site Web dynamique. Le triplet (apache, PHP, MySQL) est disponible gratuitement sur le Web et fonctionne sous les systèmes Unix et Windows. Les points suivants sont abordés : Installation et configuration du serveur apache et de MySQL sous Windows, présentation du langage PHP, études des principales fonctionnalités de MySQL et des fonctions PHP d'interaction avec la BD MySQL. Plusieurs exercices pratiques sont proposés pour implémenter les fonctionnalités les plus importantes de tout site Web dynamique (Création du site, pages HTML, création de la base de données MySQL, code sources PHP, requêtes d'interaction avec la base, & etc.)
13) Licence informatique : J'assure ce cours « très avancé » d'environ 60h avec ma collègue Nadine Cullot du département IEM. Le cours donne les concepts de base des IHM et tous éléments utiles et nécessaires pour le développement d'interfaces en utilisant le langage Visual C++ et la librairie de classes MFC de microsoft. On aborde en détails les thèmes suivants : gestion de fenêtrage, gestion des menus, gestion du clavier, gestion de la souris, interfaces avec les bases de données, manipulation d'images (bitmap) et de la vidéo (avi), etc.
14) DESS MIGS : Le but de ce cours, d'une vingtaine d'heures, est de donner aux étudiants les concepts de base des IHM : comment ouvrir une fenêtre et gérer de façon simple la souris, puis de faire le lien avec la fenêtre principale de l'application et la bibliothèque OpenGL. Les étudiants de ce DESS ont besoin d'afficher des surfaces et des modèles CAO et ce cours sert donc de préparation pour élaborer le squelette d'une application avec interface graphique (fenêtre principale, menus, souris) capable de faire appels aux fonctions OpenGL.