H17 - DESI

11 janv. 2017 ... Programmation Java et applications. Site Web : voir STUDIUM ... Examen intra (
barème : 30 %) : Mercredi 22 février 16:30 à 18:30 N-615. Examen final ... classe
: attributs (champs de données, membres données). méthodes ...

Part of the document


Hiver 2017 : IFT 1170
Programmation Java et applications Site Web : voir STUDIUM
Courriel : dift1170@iro.umontreal.ca Chargé de cours : Van Nguyen LE Objectifs du cours :
Ce cours vise à familiariser l'étudiant à la programmation orientée
objet (POO) avec Java de manière à exploiter au mieux l'esprit de
réutilisation du code. Un sous-ensemble des librairies disponibles en
JAVA sera décrit. Horaires : |Section |Théorie |Travaux pratiques |
| |Horaire |Horaire Labo. |
| |Salle | |
|A |Mercredi 16:30 à 18:30 |Mercredi 18:30 à 20:30 |
| |Z-317 |X-117 | Début des cours théoriques :
A : Mercredi 11 janvier 2017 au Z-317
Début des travaux pratiques :
A : Mercredi 18 janvier 2017 au X-117 Préalable : IFT 1810 (C suivi de Java) ou PHY1234 (C ou Python) L'étudiant doit déjà connaître les éléments de base suivants de la
programmation : les boucles de répétition, les tableaux à un seul indice,
les sous-programmes avec paramètres dans un des langages de programmation
suivants : C, C++ ou JAVA. Il devrait avoir aussi une petite idée sur la
programmation orientée objet (POO).
Évaluation :
Examen intra (barème : 30 %) : Mercredi 22 février 16:30 à 18:30 N-
615
Examen final (barème : 40 %) : Mercredi 19 avril 16:30 à 19:30 P-
310 TPs : Tp1 / 25 points, Tp2 / 35 points et Tp3 / 40 points Population cible : Ce cours de programmation s'adresse à une population d'étudiants qui a
déjà une connaissance de base d'un langage de programmation structurée en
C ou en Java ou en Python . . . et qui désirent connaître les fondements
d'un langage de programmation de plus en plus utilisé. Le langage JAVA
est utilisé aussi dans les cours du niveau baccalauréat en informatique
dans presque toutes les universités au Canada, aux États-Unis et en
Europe, etc. Contenu du cours (Hiver 2017) :
- Fonctionnement du cours IFT 1170.
- Programmer rapidement en Java les notions de base vues dans un cours
préalable :
. types primitifs : int, byte, short, long, float, double, char,
boolean
. opérateurs
. la sélection simple avec if (condition) instruction
. la sélection multiple avec switch ...
. les 3 boucles : do . . . while, while . . . et for . . .
. les tableaux à un seul indice
. méthodes avec return et méthodes de type void
- Programmation orientée objet (POO) : niveau simple
. premier concept de la POO : encapsulation
. classe : attributs (champs de données, membres données)
méthodes simples
. objet : déclaration, création, application de méthodes
. identité et égalité : distinction entre objet et valeur
- Utilisation de certaines classes prédéfinies :
. Integer, Double, Math, String, StringTokenizer, Date, ...
- Programmation orientée objet (POO) : niveau intermédiaire
. classe avec plusieurs constructeurs
. accesseurs : accéder aux membres privés via méthode get...(),
. modificateurs : imposer la valeur d'un membre via set...()
. surcharge des méthodes
. variables de classe, variables d'instance
. transmission des paramètres en JAVA
. clauses de visibilité : public, private, protected, ...
. tableau d'objets vs vecteur (class Vector)
. données vs référence en JAVA
. signature de méthodes et le mot clé this
. redéfinition de méthodes (exemples : toString, equals, . . .)
. fichier de type texte
- Programmer en Java, autres notions de programmation :
. recherche avec une sentinelle, recherche dichotomique
. récursivité (tri rapide Quick Sort, etc ...)
- Programmation orientée objet (POO) : niveau avancé
. héritage simple et polymorphisme :
une classe à une autre (polymorphism across Classes)
signature de méthodes et les mots clés this, super
. classe et méthodes abstraites, interface
. applications pratiques des interfaces
(exemple : une seule méthode "trier" pour des tableaux de
natures différentes : tableau des employés, tableau des
pays, etc).
. gestion des fichiers binaires
. héritage multiple vs interface
. structure de données : liste linéaire chaînée d'objets
Références : Veuillez chercher un livre avec la nouvelle version de Java. - Claude Delannoy "Programmer en JAVA" (édition Eyrolles)
- Deitel et Deitel "Comment programmer en JAVA"
Les éditions Reynald Goulet Inc.
- Walter Savitch "JAVA An Introduction to Computer Science &
Programming" ,
édition Prentice Hall. Avantages de la POO vs la programmation traditionnelle :
(statistique chez IBM)
Programmation procédurale avec POO
(En moyenne) (En moyenne)
Temps 35 jours 17
Lignes de code 5827 1059
nb. de lignes moy. d'1 méthode 39
6 Pages Web :
1) du cours : voir StudiUM
2) de la DESI : http://www.desi.umontreal.ca/ Cours suivant de Java : IFT 1176 Bonne session! Équipe du IFT 1170, Hiver 2017
[pic] ----------------------- Cours de Programmation
IFT1175
Programmation en Visual Basic
IFT1810
Introduction à la programmation
IFT1179
Programmation
en C#
IFT1170
Programmation Java et applications
IFT1166
Programmation orientée-objet
en C++
IFT1169
Programmation avancée en C++
IFT1176
Aspects avancés
de Java