Logo ÉTS
Session
Cours
Responsable(s) Pierre Bélisle

Se connecter
 






Cours

  • La première période de trois heures sert aussi à présenter le plan de cours, l’approche pédagogique utilisée et les différents modèles d’évaluation. 
  • Notez que l'ordre de présentation peux varier selon l'enseignant.

 

Unité

MATIÈRE

      1 - 5

  • Environnement Java.
  • Programmation de base en Java.
    • Types primitifs (variables et littéraux), variable, constantes, conversion de type (typecasting), opérateurs (+, -, *, >=, <=, …), instructions de contrôle (if-else, while,  do-while), entrées/sorties (Scanner(), System.out), programme principal (main()).
  • Normes de programmation

   

  • Introduction aux méthodes (procédures et fonctions), aux enregistrements (attribut à accès publique), aux classes (attribut à accès privé) et aux objets
  • Conception dans le paradigme orientée-objet 
    • Définitions
      • Surcharge (overload) et redéfinition (override).
      • Modificateur accès (public et private)
      • Constructeur
      • this()
      • Classes immuables et accesseurs (get),
      • Classes mutables et mutateurs (set)
      • Destructeur (finalize)
      • Constantes  static
      • Commentaire Javadoc
  • Les paquetages (package) java.lang et java.util de Java
    • Classes de Java : String, Arrays et Math
  • Les API de Java

 

  • Programmation de base en Java.
    • Collection de base en Java
      • Les tableaux statiques
        • Boucle for
      • Tableaux
        • De données de type primitif
        • D’objets
    • Algorithmes de Tris : sélection, insertion et bulles
    • Algorithme de fouilles : linéaire, linéaire ordonnée et binaire (ou dichotomique)

   

  • Collection
    • Types de données abstraits (TDA) à implémentation statique
      • Pile (LIFO)
      • File (FIFO)
      • Liste
    • Levée (throws et throw) et gestion d’exception (try-catch).

   

  • Classe interne (inner class)
  • Classes enveloppeurs (wrapper) Integer, Double, ... et conversion automatique (autoboxing et unboxing) (java 5.0 et +).
  • Collection (suite)
    • Chaînage dynamique simple
    • Pile et File à implémentation dynamique

6

  • Collection (suite)
    • Liste (implémentation : chaînage dynamique simple)
      • Avec position numérique en paramètre (comme un tableau)

Examen 1 (cours 1 – 5) :

7 – 9

  • Collection (suite)
    • Liste 
      • Avec position_courante (comme un fichier)
      • Chaînage dynamique double (un exemple)
  • Ajout de comportement à une classe
    • Par héritage (classe ou interface)
      • Utilité 
      • Retour sur la redéfinition (overide)
      • Syntaxe (extends, super)
      • Compatibilité parent-enfant
    • Par composition

 

  • Généralisation/spécialisation (un exemple)

10

  • Polymorphisme dynamique (late binding)

Examen 2 (cours 6-9) : 

11-13

Les interfaces graphiques Swing sont présentées comme prétexte d'utilisation des trois concepts orientés-objet soit : Encapsulation, héritage et polymorphisme dynamique.

  • GUI (Graphical User Interface)
    • Composants Swing
      • JFrame, JPanel, JButton JTextField, JMenuBar, JMenu, JMenuItem,  Layout Manager, …
    • Gestion d’évènements (bas et haut niveau).

 

 Examen final (cours 1-13)

 

Laboratoires et travaux pratiques

Laboratoires :

  • Chaque semaine des exercices sont proposés pour comprendre la théorie de la semaine en vue de la réalisation des travaux pratiques.  Les laboratoires ne sont pas à remettre mais nous supposons que l'étudiant les réalise.  Nous pouvons les utiliser en référence dans les cours, les examens et/ou dans les travaux pratiques.