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

Se connecter
 

Sauvegarde réussie
Echec de sauvegarde
Avertissement


Préalables

Aucun préalable requis
 

Unités d’agrément

Données non disponibles

Qualités de l’ingénieur

 













Qn
Qualité visée dans ce cours  
Qn
  Qualité visée dans un autre cours  
  Indicateur enseigné
  Indicateur évalué
  Indicateur enseigné et évalué

- Survolez les icones pour voir le nom de chaque qualité.
- Cliquez sur les icones pour voir la description.

Descriptif du cours

Cours destiné aux étudiants ayant déjà suivi un cours de programmation. Il permet d’apprendre et de pratiquer les principes de base de la programmation orientée objet (encapsulation, héritage, composition et polymorphisme). Le langage de programmation utilisé est le même que pour les cours de conception suivants.

À la suite d’une présentation de base du langage utilisé et d’algorithmes de tri (sélection, insertion et bulle) et de fouille binaire, l’étudiant acquiert des principes de programmation avancée comme l’implémentation des types de données abstraits de base telles qu'une pile, une file et une liste (avec et sans position courante), autant avec tableau statique qu’avec chaînage dynamique (simple et double). Il acquiert également des notions orientées objet à l’aide de la gestion et la levée d’exception, l’utilisation de collections de base offertes par le langage utilisé (exemple : Vector, ArrayList et linkedList de Java), l’écriture de classe interne et leur avantage, l’utilisation de composants graphiques pour la construction d’interfaces utilisateurs telles que bouton, étiquette (label), panneau (panel), cadre (frame) en plus de la gestion d’événements par écouteur (listener). Le tout avec de bonnes pratiques de programmation utilisées et reconnues.

Séances de laboratoire permettant l'application des notions de programmation.





Objectifs du cours

Ce cours a pour objectif d’enseigner les principes de la programmation orientée-objet (encapsulation, héritage et polymorphisme) en insistant sur des notions de programmation plus approfondies que les types primitifs (int, char, …), les structures de contrôle et les structures de données de base tels que les tableaux.

 De façon plus spécifique, ce cours devra permettre à l'étudiant d’ :

  • Utiliser un environnement de programmation Java (BlueJ, Eclipse, JCreator ou autres).
  • Apprendre à programmer dans le paradigme orienté-objet avec le langage Java. 
    • Comprendre les relations d’héritage, d’agrégation et de composition.
    • Comprendre et exploiter l’utilité de la visibilité des attributs et des méthodes (encapsulation).
    • Comprendre et pouvoir exploiter le polymorphisme.

 

  • Être en mesure de programmer (et d’utiliser) des types de données abstraits (piles, files et listes) avec différentes implémentations.

 

  • Utiliser les composants Swing pour la création d’interface graphique.

 

L’étudiant doit au préalable avoir une compréhension des concepts suivants[1] :

 

  • Types de base (Entier, réel, booléen, caractère).
  • Opérateurs sur les types de base (+, -, *, /, %, …).
  • Types composés (chaînes de caractères et tableaux).
  • Structures de contrôle (sélection, itération).
  • Structures de programme (bloc principal, procédures et fonctions).
  • Passage de paramètres (par valeur, par référence, formel et actuel).
  • Entrées (clavier) et sorties (écran).

 


[1] Peu importe le langage de programmation qui a été utilisé.


Stratégies pédagogiques

Les deux premiers cours serviront à une révision de concepts présumés comme étant déjà connus et à l’apprentissage de ceux-ci en Java.  Les cours suivants présenteront les concepts de programmation orientée-objet et des applications de ceux-ci à l’aide de notions de programmation plus approfondies et de l’utilisation des composants Swing.

 

3 heures de cours magistraux par semaine

3 heures de laboratoire par semaine

 

Les laboratoires visent :

  •       L'assimilation des notions vues au cours à l’aide d’exercices;
  •       La mise au point des programmes donnés en travaux pratiques (si les exercices sont finis).


Utilisation d’appareils électroniques

Micro-ordinateurs en laboratoire.  Le droit à l'utilisation d'appareils électroniques en classe reste la prérogative de l'enseignant.



Coordonnées de l’enseignant

* Double-cliquez sur le champ pour modifier le contenu