- Site web du cours (cette page): http://www.iro.umontreal.ca/~vincentp/ift1015
Les étudiants devraient se rendre sur cette page au moins une fois par semaine pour des informations importantes. - Professeur: Pascal Vincent.
Consultation: après le cours ou sur rendez-vous.
Je suis notoirement très lent à répondre aux emails. Si vous avez des questions pressantes à me poser, essayez si possible de venir directement me voir. - Démos: les séances de travaux pratiques et de laboratoire ont leur propre page Web dédiée. Pour joindre les démonstrateurs: dift1015@iro.umontreal.ca
Dernières nouvelles
- EXAMEN FINAL lundi 21 avril 8h30-11h30 en salle 1355. Tout
est au programme! Il y aura notamment des questions de programmation
objet, avec des appels de méthodes static versus non static; les
fonctions récursives et les listes chaînées, la
compréhension du passage de paramètres aux fonctions
(copie de valeurs pour les types simples versus copie de
références pour les tableaux et objets). Documentation papier permise. Notez que j'ai réparé le lien vers l'examen final de l'hiver 2007...
Bonnes révisions et bonne chance pour l'examen final! - Extension pour le TP2, vous avez jusqu'au mercredi 23 avril le matin à 10h00 pour le remettre.
- l'EXAMEN PRATIQUE DE REPRISE aura lieu le mercredi 23 avril de 10h30 à 12h30 en salle 3181.
- lundi 31 mars: examen pratique de 9h30 à 11h30 au labo 1340.
Au programme tout jusqu'avant les listes chaînées. Documentation permise, mais pas l'internet! - lundi 10 mars: l'énoncé du TP 1 est disponible. Il devra être remis le vendredi 28 mars avant minuit.
- lundi 18 février: Examen intra, de 9h30 à 11h30, salle Z-317 du pavillon Claire McNicoll
- Le séminaire Unix aura lieu mardi 22 janvier de 17h30 à 19h30 au local 1340. Vous devez y participer! (à moins d'être déjà un pro d'unix).
- jeudi 16 janvier: 9h30 à 10h30 TP en 1177, 10h30 à 12h30 labo en 1340.
- Un premier "mini-laboratoire" aura lieu ce jeudi 10 janvier au labo 1340 à 10h30. L'objectif sera de vous connecter une première fois sur les systèmes du DIRO et configurer l'environnement pour une première utilisation de Java. Munissez-vous de votre Code Permanent et votre UNIP. Vous pouvez dores et déjà essayer depuis un navigateur Web d'obtenir votre futur mot de passe linux. Notez le bien. Si vous rencontrez des difficultés on vous aidera lors du labo.
- lundi 7 janvier 2008: lundi de 9h30 à 11h30. Premier cours (local 1177). Bienvenue à tous!
Horaire
Lundi | 9h30 - 11h30 | Théorie | Local 1177 (AA) |
Mercredi | 12h30 - 13h30 | Théorie | Local 1177 (AA) |
Jeudi | 9h30 - 10h30 | Travaux pratiques | Local 1177 (AA) |
Jeudi | 10h30 - 12h30 | Laboratoire | Local 1340 (AA) |
Objectifs du cours
Le cours a pour objectif de vous enseigner les éléments de base d'un langage de programmation: types, expressions, énoncés conditionnels et itératifs, procédures, fonctions, paramètres, récursivité, tableaux, enregistrements, pointeurs et fichiers.
Ce cours vise également à vous apporter une expérience pratique de ces éléments de base dans un premier langage: le langage Java. A l'issue du cours, vous serez en mesure de concevoir et réaliser des programmes simples en Java, et serez capable d'acquérir rapidement les bases d'autres langages de programmation.
Livre suggéré:
Le choix d'un livre dépend de votre expérience en programmation. Nous en discuterons lors du premier cours.![]() Anne Tasso, Le livre de Java premier langage, Eyrolles, 2006 |
![]() C. Delannoy, Programmer en Java, Eyrolles, 2006 |
Evaluation
L'évaluation repose sur les exercices pratiques (EX), les travaux pratiques (TP), l'examen pratique (EP), l'examen intra (EI), et l'examen final (EF).
Le décompte des points se répartit comme suit:- 10 exercices pratiques (EX) comptant pour 1% chacun.
- 2 travaux pratiques (TP) comptant pour 15% chacun.
- 1 examen pratique (EP) comptant pour 10% (mais voir seuil ci-dessous). Prévu le lundi 31 mars de 9h30 à 11h30 au labo 1340.
- 1 examen intra (EI) comptant pour 20%. Prévu le lundi 18 février de 9h30 à 11h30 (local Z-317 Pav C-McNicoll). Examen écrit, durée 2 heures, matière théorique du début à mi-session, toute documentation est permise.
- 1 examen final (EF) comptant pour 30%. Prévu le lundi 21 avril 2007 de 8h30 à 11h30 (local 1355). Examen écrit, durée 3 heures, matière théorique du début à fin-session, toute documentation est permise.
- Vous devez obtenir une moyenne pondérée minimum de 40% aux examens intra et finaux (0.4 * intra + 0.6 * final >= 40% )
- Vous devez obtenir la note minimale de 40% à l'examen pratique.
- Si un des seuils n'est pas atteint, tous travaux pratiques et exercices pratiques se voient attribuer la note 0!
Chaque exercice pratique sera présenté durant l'heure hebdomadaire de travaux pratiques, et portera sur la matière des cours précédents.
Les exercices pratiques se font individuellement.
Les travaux pratiques se font seul ou en équipe de deux.
Tous les travaux sont faits en Java et doivent fonctionner
adéquatement sur les environnements du DIRO, sous Linux.
Examens et notes
Concernant la fraude et le plagiat ATTENTION! L'Université de Montréal a désormais une politique stricte en cas de fraude ou plagiat. Si une infraction est constaté, le professeur est obligé de faire un rapport au directeur du département. Une procédure administrative est alors automatiquement enclenchée avec les conséquences suivantes: l'infraction est notée à votre dossier, et une sanction est décidée. En cas de récidives les sanctions peuvent aller jusqu'à l'expulsion. Alors faites vos examens seul!
Examens que j'ai donnés les années passées: les énoncés d'examens des années passées se trouvent sur la page des cours que j'ai donné les années en question (voir la section liens utiles).
Pour consulter vos notes (examen, TPs, exercices pratiques, ...) vous pouvez utilser la commande notes. Pour cela vous devez avoir une fenêtre Unix ouverte sur votre compte IRO, sur une station du réseau BACC ou encore sur phobos ou deimos. Tapez la commande notes ift1015
Examen intra, hiver 2008: Énoncé de l'examen.
Examen pratique, hiver 2008: Énoncé de l'examen.
Examen final, hiver 2008: Énoncé de l'examen.
Liens utiles
- Séminaire Unix: Allez voir la page web et lire le document de référence (html ou pdf).
- Page du cours donné donné à l'automne 2007 par Sébastien Roy.
- Page du cours que j'ai donné à l'hiver 2007 (incluant énoncés d'examens).
Contenu détaillé des cours (planifiés ou effectués)
Ce cours aura pour l'essentiel le même contenu et le même format que le cours donné par Sébastien Roy.
Notez que l'horaire ci-dessous est préliminaire. Le détail des thèmes de cours pour les dates futures est donné à titre indicatif seulement, et sera mis à jour et adapté au cours de l'année. De même, les liens vers les diapos utilisées pour les cours seront mis à jour au fur et à mesure.
Semaine | Date | Thème du cours | Diapo |
---|---|---|---|
1 | 7.01.2008 | Présentation du cours et
introduction. Premier programme Java sous unix. |
Programme
du
premier cours. intro.pdf |
9.01.2008 | Variables. | variables.pdf | |
2 | 14.01.2008 | Expressions | expressions.pdf |
16.01.2008 | Entrées-sorties | inout.pdf (vous pouvez télécharger ici le fichier Keyboard.java pour pouvoir utiliser ses fonctions d'entrée clavier décrites dans le cours.) | |
3 | 21.01.2008 | Conditions | conditions.pdf |
23.01.2008 | Conditions (suite) | Exemple if/else: Hello.java conditions2.pdf |
|
4 | 28.01.2008 | Boucles | boucles.pdf |
30.01.2008 | Fonctions 1 | fonctions1.pdf | |
5 | 4.02.2008 | Fonctions 2 | fonctions2.pdf |
6.02.2008 | Art de programmer 1 | art1.pdf | |
6 | 11.02.2008 | Tableaux | tableaux.pdf |
13.02.2008 | Art de programmer 2 | art2.pdf | |
7 | 18.02.2008 | Examen intra | |
20.02.2008 | Correction de l'examen intra | ||
8 | 25.02.2008 | Objets 1 | oop1.pdf |
27.02.2008 | Objets 3 |
oop3.pdf | |
9 | 3.03.2008 | Semaine de lecture (pas de cours) | |
5.03.2008 | Semaine de lecture (pas de cours) | ||
10 | 10.03.2008 | Programmation objet: constructeurs, différence entre méthodes non statiques et statiques. this. Passage de paramètres objet par référence. | |
12.03.2008 | Algo 1 (recherche et tri) |
algo1.pdf | |
11 | 17.03.2008 | Listes chaînées 1 | linked list
(Wikipedia) ListeChaine.java Noeud.java |
19.03.2008 | Ce qui se passe en mémoire: pile pour variables locales et paramètres des fonctions, allocation de mémoire dyamique avec new, "pointeurs-référence", différence entre types simples et tableaux/objets pour ce qui est du passage de paramètres aux fonctions. | |
|
12 | 24.03.2008 | Congé de Pâques | |
26.03.2008 | Listes chaînées 2 | ||
13 | 31.03.2008 | Examen pratique | de 9h30 à 11h30 au labo 1340 |
2.04.2008 | Récursion |
algo2.pdf ex: tour de Hanoi (hanoi.java) |
|
14 | 7.04.2008 | |
|
9.04.2008 | Art de programmer 3 | art3.pdf | |
15 | 14.04.2008 | Dernier cours (format question/réponses et
préparation de l'examen) |
|
18.04.2008 | Pas de cours (semaine d'examen) | ||
16 | 21.04.2008 | Examen final | |
2.04.2008 | Pas de cours (semaine d'examen) |