Automne 2014 : IFT 1810 sections B+C Introduction à la ...
Familiariser l'étudiant avec la programmation élémentaire en C ... Eyrolles;
Programmer en langage C, Cours et exercices corrigés, Claude Delannoy,
Eyrolles ...
Part of the document
Automne 2014 : IFT 1810 sections B+C
Introduction à la programmation
Site Web du cours : http://www.iro.umontreal.ca/~dift1810/
Courriel : dift1810@iro.umontreal.ca
Chargé de cours : Le Van Nguyen
Objectifs
> Familiariser l'étudiant avec la programmation élémentaire en C
> Familiariser l'étudiant avec les concepts de la programmation orientée
objet en Java
Ce cours d'introduction donne l'accès à des cours de programmation
plus avancés, notamment le cours de programmation en Visual Basic
(IFT1175), le cours de programmation en C++ (IFT1166), le cours de
programmation Java et applications (IFT1170) et le cours de
programmation en C# (IFT1179). Ce cours est aussi un des
cours préalables de certains cours en programmation internet, le cours
d'introduction
au multimédia IFT 2720, le cours sécurité en informatique IFT 2830 etc
. . .
Modalités :
Cours théoriques et travaux pratiques durant un trimestre.
Le dépannage de vos TPs se fait durant les périodes de démonstration
et/ou durant certaines périodes de Pratique Libre (P.L.).
|Section |Théorie |Travaux pratiques |
| |Horaire Salle |Horaire Labo. |
|B |Jeudi 12:30 à 14:30 |Gr 1 Jeudi 10:30 à 12:30 |
| |1360 |X-115 |
| |Pav. A.A. |Gr 2 Jeudi 14:30 à 16:30 |
| | |X-115 |
|C |Merc. 16:30 à 18:30 |Gr 1 Merc. 14:30 à 16:30 |
| |S-142 |X-117 |
| | |Gr 2 Merc. 18:30 à 20:30 |
| | |X-117 |
Début des cours théoriques : Mercredi 03 septembre pour C
Jeudi 04 septembre pour B
Début des travaux pratiques: Mercredi 10 septembre pour C
Jeudi 11 septembre pour B
Préalable : aucun
Évaluation :
Examen intra (barème : 30 %) : mercredi 15 octobre au N-515 pour
section C
jeudi 16 octobre au P-310 pour section B
L'intra comporte seulement des questions sur le langage C
Examen final (barème : 40 %) : mercredi 17 décembre au S-142 pour
section C
jeudi 18 décembre au S-142 pour section B
Le final comporte des questions sur le langage C et aussi le Java
La documentation (non électronique) est permise pour les examens.
Les modèles d'examens avec leurs solutions seront distribués environ
d'une semaine avant ces deux examens. Certaines questions sont
reliées
aux travaux pratiques que vous réaliserez durant la session => faites
et
comprenez les travaux pratiques ; c'est un des bons moyens pour mieux
réussir vos examens.
Travaux pratiques : 30% de la note globale du cours
TP # 1 : / 25 pts, TP # 2 : / 35 pts, TP # 3 : / 40 pts
Références pour IFT 1810 B et C : Aucun livre est obligatoire.
. Notes de cours disponibles graduellement sur le site Web du cours
. S'initier à la programmation et à l'orienté objet, Claude Delannoy,
Eyrolles
. Le livre du C Premier langage, Claude Delannoy, Eyrolles
. Programmer en langage C, Cours et exercices corrigés, Claude Delannoy,
Eyrolles
. Le livre de Java Premier langage, Anne Tasso, Eyrolles
Calendrier et contenu :
|Semaines|Cours théorique |
|Avant |Description du cours et introduction à la programmation : |
|l'intra |compréhension du problème |
| |analyse des informations |
| |algorithme en langage informel |
| | |
| |Éléments de base d'un langage, |
| |types de base, emplacement de l'information, constantes versus |
| |variables, identificateurs |
| |opérateurs arithmétiques, relationnels et logiques |
| |énoncés d'affectation |
| |énoncés de lecture et d'écriture en C |
| | |
| |Instructions de contrôle en C: |
| |sélectives simples et multiples : if et switch |
| |itératives : boucles do...while, while... et for... |
| | |
| |Exemples avec des statistiques (compteur, cumulateur, moyenne, |
| |etc.) |
| | |
| |Exemples avec de la validation de données |
| | |
| |Imbrications des instructions |
| | |
| |Tableaux à un seul indice |
| |Tableaux et fonctions |
| | |
| |Structures modulaires des programmes en C: |
| |fonctions void et fonctions avec return |
| |paramètres dans les fonctions |
| | |
|Après |Suite de fonctions, tableaux en C |
|l'intra |Tableaux à une dimension en Java |
| |. passage en paramètre |
| |. recherche et tri. |
| |Introduction à la P.O.O. avec le langage Java: objet, classe, |
| |attributs, méthode d'instances. |
| |Exemples utilisant quelques classes prédéfinies Java: |
| |Énoncés de lecture et d'écriture |
| |Langage Java versus C ( après l'intra, on réduit du temps de |
| |présentation le C pour apprendre graduellement le Java et comparer |
| |un peu ces deux langages ). |
| |Concepts de la programmation objet : |
| |attributs, constructeurs, méthodes d'instances |
| |encapsulation, visibilité : public versus privé |
| |méthodes de classes, variables de classes |
| |Écriture de classes simples |
Travaux pratiques :
Première semaine (le 10 ou 11 septembre) :
- Familiarisation avec l'environnement de travail.
- Préparation (chez vous) des premiers numéros du TP1
dont l'énoncé est disponible dès le 03 ou 04 septembre.
Les autres semaines sont réservées à la réalisation des travaux de
programmation. L'énoncé des TPs est distribué une semaine à l'avance,
ceci permet à l'étudiant de préparer son programme et de le mettre au
point pendant les séances prévues à cet effet. Outre les périodes de
démonstration, vous pouvez profiter des périodes de pratique libre (P.L.)
pour compléter vos travaux ou réviser la matière vue aux cours
théoriques.
Pour toutes les questions relatives à vos travaux, veuillez écrire au :
dift1810@iro.umontreal.ca en identifiant votre cours.
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 fonction 39
6
Pages Web :
1) du cours : http://www.iro.umontreal.ca/~dift1810/
2) de la DESI : http://www.desi.umontreal.ca/
[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