site de Fabien Torre, université de Lille


Déroulement des cours Algorithmique et Java en Master ID

Les dates et contenus des cours d'algorithmique et de Java en deuxième année de Master-ID (2007-2008).

Séance 1/12

Algorithmique

  • boucles simples et boucles imbriquées

Programmation Java

Syntaxe Java non-objet :

  • instruction d'affichage
  • déclaration de variables, typage Java, affectations
  • tests et structures de contrôle
  • méthodes et programme principal

Travaux pratiques

  • Hello world!
  • compter jusqu'à 100
  • production d'une table de multiplication
  • dessin de figures géométriques

Séance 2/12

Algorithmique

  • algorithmes sur les tableaux

Programmation Java

  • vocabulaire: classes et objets, méthodes et propriétés
  • exemples de deux classes Java : String et Arrays
  • syntaxe pour écrire une classe
  • variables et méthodes d'instance, variables et méthodes de classe
  • des méthodes à implémenter : l'encapsulation (getter et setter), les méthodes héritées de Object
  • héritage, classes concrètes, classes abstraites
  • utilisation de javadoc

Travaux pratiques

  • implémentation d'algorithmes sur les tableaux Java

Séance 3/12

Programmation Java

  • polymorphisme
  • interfaces
  • JUnit

Travaux pratiques

  • classe TableDeMultiplication
  • classes de Figures
  • fichier de tests JUnit pour le problème Syracuse

Séance 4/12

Programmation Java

  • énumérations
  • lecture au clavier en Java

Travaux pratiques

  • correction du problème Syracuse
  • implémentation des premières classes pour le dilemme des prisonniers itéré

Séance 5/12

Programmation Java

  • les varargs

Travaux pratiques

  • suite et fin du dilemme des prisonniers itéré

Séance 6/12

Interrogation

Sujet sur le jeu « Alésia », nécessitant :

  • implémentation de classes et d'interfaces, héritage
  • encapsulation, polymorphisme
  • manipulation de tableaux
  • utilisation de JUnit et javadoc

Séance 7/12

Programmation Java

  • exceptions
  • écrire et relire dans les fichiers
  • sérialisation
  • XML

Séance 8/12

Algorithmique

  • structures de données : liste, pile, file, avec ou sans doublon
  • opérations sur ces structures : insérer, accéder, effacer, tester existence, trier
  • implémentations possibles : tableau, liste chaînée, arbre, table de hachage

Programmation Java

  • classes génériques
  • les collections : Set et List
  • les map
  • interfaces Comparable et Comparator
  • méthode hashCode

Séance 9/12

Travaux pratiques

On manipule les structures fournies par Java :

  • les set : HashSet et TreeSet
  • les list : ArrayList et LinkedList
  • les map : HashMap et TreeMap

et on utilise les interfaces Comparable, Comparator, Iterator et Iterable

Séance 10/12

Algorithmique

  • liste chaînée
  • arbre binaire de recherche

Travaux pratiques

  • implémentation de ces structures avec des classes génériques
  • définir des itérateurs sur la classe ListeChainee

Séance 11/12

Programmation Java

Organisation et distribution du code

  • séparation des sources et des classes compilées
  • packages, hiérachie et import
  • fichiers .jar

Travaux pratiques

  • constitution de .jar exécutables pour le Dilemme

Séance 12/12

Algorithmique

Design Patterns :

  • modèle de création : Singleton
  • modèle structurel : Décorateur
  • modèles comportementaux : Obervateur, Itérateur

Travaux pratiques

  • classe ServeurImpression pour illustrer Singleton
  • cafés et suppléments pour illustrer Décorateur
  • station météo pour illustrer Observateur
Fabien Torre Valid HTML5! Valid CSS!
Accueil > Enseignement > Formations > Anciennes formations > Master 1 & 2 ID > Planning Algo-2
(contenu mis à jour )
site de Fabien Torre, université de Lille

Description

Survoler un lien de navigation pour lire sa description ici...


Une photo au hasard

Voyage à Hong-Kong.

Wan Chai et Causeway Bay.

(le 17 décembre 2006)

St. Mary's church.