2025-06-09 : Mis à jour pour refléter les contenus réels.
Copyright © 2025 Yves MARCOUX; dernière modification de cette page: 2025-06-09.
Plan de cours Été 2025
Yves MARCOUX - EBSI - Université de Montréal
Horaire et locaux : Quinze demi-journées (9h-12h ou 13h30-16h30) entre le 26 mai et le 6 juin 2025, au C-2043 du Pavillon Lionel-Groulx. Détails dans le calendrier. Cet horaire inclut des exercices supervisés de laboratoire au même local.
Cours de trois (3) crédits, ce qui correspond à 135 heures de travail pour l’étudiante1 : 45 heures en classe + 90 heures de travail personnel.
Description officielle du cours :
Introduction à la programmation procédurale et orientée-objet. Développement d’applications documentaires dans un langage de scriptage orienté-objet. Aperçu d’autres langages. Notions d’algorithmique et de complexité. Préalables: (SCI6001 ou SCI6002) et SCI6005.
Professeur : Yves MARCOUX <yves.marcoux@umontreal.ca>.
Modalités :
1 Dans ce cours, la question des épicènes est habituellement réglée par l’utilisation du féminin.
À la fin du cours, l’étudiante possédera les rudiments de la programmation procédurale et orientée-objet moderne. Plus spécifiquement, l’étudiante:
Le cours est une introduction à la programmation dans les environnements de scriptage. Le principal langage utilisé est le JavaScript en environnement navigateur Web. Une progression de travaux pratiques permet d’intégrer les connaissances acquises.
Les étudiantes sont aussi appelées à explorer et à présenter devant la classe une
API simple (Application Programming Interface) ou un environnement de programmation
autre qu’un navigateur Web. Dans des cas particuliers, le travail d’exploration peut
prendre la forme d’un projet de développement d’envergure suffisante. Il peut aussi
prendre la forme d’une exploration de ressources programmables disponibles aux
laboratoires d’informatique documentaire de l’EBSI : micro:bit,
Raspberry Pi et Arduino (à confirmer).
Le sujet de l’exploration doit être approuvé par le professeur. Les modalités de la présentation seront discutées en classe.
Le cours SCI6005 Information numérique et informatique documentaire est préalable. Ce préalable est précisé plus avant dans la lecture Introduction au cours, à faire le premier jour du cours.
En plus des activités évaluées, plusieurs exercices non évalués sont proposés. Il est important de faire tous ces exercices.
| Activité | Pondération |
|---|---|
| 🛠 Deux exercices courts à remettre le lendemain (2 × 5%)* | 10% |
| ❔ Deux « mini-quiz » en classe (2 × 15%)* | 30% |
| 🛠 TP1 à 3 : Projets de programmation (10% + 10%* + 20%) | 40% |
| 🛠 Présentation en classe du travail d’exploration | 20% |
* Les évaluations marquées d’un * sont individuelles. Les autres peuvent être soit individuelles, soit en équipes de deux personnes.
Les heures de remise seront précisées dans StudiUM.
Voir ici la méthode de calcul de la note finale du cours (notez que l’évaluation avec seuil ne s’applique pas à ce cours).
Pour vous aider à suivre l’évolution des vos résultats au cours du trimestre, et notamment connaître les notes requises dans les évaluations à venir pour atteindre une cote donnée, un Évaluateur de réussite est disponible. N’hésitez pas à l’utiliser.
Notes : Les contenus et leur répartition sont sujets à ajustement. Les moments des évaluations sont des cibles qui pourraient bouger légèrement.
| Date | Cours | Évaluation (remise) | Contenu |
|---|---|---|---|
| Lundi 26 mai | AM – C1 | Logistique et ressources du cours / Ce cours et ses choix / Qu’est-ce que la programmation et pourquoi programmer / Programmation, IA et société / Programmation, écriture et esthétique / End-user programming / Environnements, scripts, énoncés, expressions / HTML et JavaScript / La console JavaScript / Votre premier script ! | |
| PM Libre | Libre | ||
| Mardi 27 mai | AM – C2 | Arbres d’exécution / Éléments <script> et ordre d’exécution
/ Conversions automatiques / Opérations mixtes / Plus d’opérations /
Interactions de base / Pensée algorithmique et patrons de conception /
Commentaires JS / Notes sur les constantes et la syntaxe / Votre deuxième
script ! |
|
| PM Libre | Libre | ||
| Mercredi 28 mai | AM – C3 | 🛠 ex. court 5%* | Viser l’expérience utilisatrice / Valeurs plutôt vraies et plutôt fausses
(truthy et falsy) / Opérateurs d’auto-réassignation et
d’incrémentation / Plus d’opérations diverses / Structures if et
if…else, et bonnes pratiques associées / Aides à la
programmation / Fichiers JS séparés / Fonction
console.log() |
| PM – C4 | Fonctions définies par la programmeuse (FDP) / Déclarations de variable,
variables locales : const, let, var /
"use strict" et son usage
|
||
| Jeudi 29 mai | AM – C5 | 🛠 ex. court 5%* | Structure while et bonne pratique associée, organigrammes /
Patron de conception « balayage d’une structure » sur une chaîne de caractères
/ Caractères alphanumériques |
| PM – C6 | Retour sur OU et ET booléens / L’objet document et les éléments
HTML / Entrées par formulaire / Dynamisme par propriétés et classes CSS /
Sorties par propriétés innerText et innerHTML |
||
| Vendredi 30 mai | AM – C7 | ❔ mini-quiz 15%* | Bibliothèque bib-6373.js / Structure for /
Tableaux et notations associées (constantes et indexation) / Tableaux et texte
/ Tri d’un tableau, notion de
callback / Chaînes et diacritiques : comparaison localisée /
Tableaux complexes |
| PM – C8 | 🛠 TP1 10% | Vers un compteur de mots ! | |
| Fin de semaine | Libre | ||
| Lundi 2 juin | AM – C9 | 🛠 TP2 10%* | Retour sur le mini-quiz et le TP1 / Discussion sur TP2 |
| PM – C10 | Retour sur TP2 | ||
| Mardi 3 juin | AM – C11 | ❔ mini-quiz 15%* | Présentation et discussion du TP3 |
| PM Libre | Libre | ||
| Mercredi 4 juin | AM – C12 | Contrôles de formulaire additionnels / Affichage par nouvel onglet
(pop-up), la fonction document.write() /
Déaccentuation / Lecture d’un fichier / Objets non typés / JSON / / Gestion
d’événement / JS côté serveur, server-side include, accès à une base
de données / JS en système d’exploitation, accès aux fichiers locaux, WSH et
NodeJS / Outils de débogage en navigateur / L’API canvas |
|
| PM Libre | 🛠 TP3 20% | Libre | |
| Jeudi 5 juin | AM – C13 | Discussion avec Patrick Beaulieu, Lead développeur chez Raymond Raymond Chabot Grant Thornton, sur l’impact de l’intelligence artificielle sur le développement logiciel | |
| PM Libre | Libre | ||
| Vendredi 6 juin | AM – C14 | 🛠 20% exploration | Présentations des travaux d’exploration / Retour sur les travaux |
| PM – C15 | Retour sur le cours et l’informatique en général |
Le mode de communication privilégié du professeur vers vous est la section Messages du professeur de la page StudiUM du cours.
Le professeur peut également vous joindre par courriel. L’adresse utilisée sera celle enregistrée dans Mon accès UdeM; assurez-vous qu’elle soit valide et fonctionnelle en tout temps. SVP, lire votre courriel tous les jours.
Le mode de communication privilégié pour joindre professeur est en présence, en classe. Le courriel est également acceptable. Souvent, je demande confirmation par courriel d’un échange verbal, afin de ne pas oublier.
L’adresse courriel du professeur est <yves.marcoux@umontreal.ca>. SVP, inscrire la mention [SCI6373] (incluant les crochets) au début de la ligne sujet de votre message.
Vous pouvez aussi poser des questions dans le forum Vos questions-réponses sur la page StudiUM du cours.
L’utilisation d’outils d’intelligence artificielle pour réaliser les activités évaluées est interdite et constitue une infraction au règlement disciplinaire.
Tous les règlements, politiques et directives énoncés dans le Guide étudiant de la MSI s’appliquent, incluant le Code d’honneur de l’EBSI. Une attention particulière est à porter aux éléments suivants :
Travaux en équipe
Pour les travaux réalisés en équipe, le professeur
se réserve le droit d’évaluer séparément chaque membre d’une équipe.
Règlement disciplinaire sur le plagiat ou la fraude concernant les
étudiants
Toute infraction au règlement sur le plagiat ou la fraude sera
traitée suivant la procédure indiquée dans le règlement.
Retard dans la remise des travaux
Tout retard non justifié dans la
remise d’un travail sera sanctionné : 5% de la note est retranché par jour de
calendrier de retard jusqu’à un maximum de 35%; à la 8ième journée de calendrier, la
note F ou zéro (0) est attribuée.
Qualité de la langue
Un maximum de 10% de la note globale d’un
travail pourra être retranché pour mauvaise qualité de la langue dans les travaux
(ne s’applique pas aux quiz).
.umontreal.ca..umontreal.ca..umontreal.ca.C’est la spécification ultime du JavaScript, mise à jour pratiquement à chaque année. Malheureusement, illisible pour les non spécialistes.