Quelques raccourcis :
Ceci est un petit site de support pour le cours 420-KEF-LG – Élaboration d'applications dans un environnement graphique. Notez que plusieurs liens divers sont mis à votre disposition; parmi ceux-ci, soyez particulièrement attentives et attentifs à ceux portant :
Index des séances théoriques | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
T00 | T01 | T02 | T03 | T04 | T05 | T06 | T07 | T08 | T09 | T10 | T11 | T12 | T13 | T14 |
Date | Séance | Contenu |
---|---|---|
22 janvier |
Situation un peu absurde : votre chic prof ne se présente pas à la toute première séance de la session. Quelle horreur! |
|
24 janvier |
Au menu :
Note personnelle : pour moi, ce cours en est à sa première incarnation. Il a été donné par le passé, mais à une autre session et jamais par moi. J'ai plusieurs idées, plusieurs projets, mais nous allons déterminer ensemble les contours de ce que représentera cette expérience collective pour vous et moi. Je jongle avec des idées de :
C'est un premier contact entre nous aujourd'hui, dû aux circonstances, mais sachez tout de suite que vous pouvez profiter de cette session pour éclaircir toutes sortes de questionnements et de préoccupations que vous pourriez avoir quant à la programmation, tous langages confondus. Profitez-en! |
|
29 janvier |
Vous trouverez un exemple de solution aux problèmes posés aujourd'hui sur cette page. Au menu : un peu d'expérimentation avec JavaScript (rien de transcendant, juste de la gymnastique pour se remettre en forme). Avant de débuter : faites-vous une petite page HTML5 de base (vous pouvez vous inspirer de celle-ci et l'adapter à votre goût, si vous le souhaitez), que vous pourrez dupliquer pour expérimenter avec chacun des exercices qui suivent. Ceci vous permettra d'être plus efficace par la suite. Pour des détails de langage, vous pouvez examiner les liens suivants :
Exercice 0 : petit exercice simple. Créez une page HTML5 dans laquelle on trouvera :
Lorsque l'usager cliquera sur le bouton, remplacez le texte dans le gros titre par celui dans la zone de texte. Truc : utilisez une fonction JavaScript pour faire le remplacement. Pour que tout se passe bien, attribuez des id distincts aux éléments clés (la zone de texte et le gros titre), utilisez la méthode getElementById() du document représentant le DOM de la page Web, et remplacez le innerText du gros titre par le value de la zone de texte. Exercice 1 : reprenez pour l'essentiel l'exercice 0 (copiez la page et faites des ajustements, disons) mais au lieu de simplement remplacer le texte du gros titre, remplacez-en le code HTML (utilisez innerHTML plutôt qu'innerText) et soulignez la première lettre de chaque mot. Pour les besoins de la cause, le début d'un mot sera le premier non-blanc au début du texte ou une séquence non-vide de caractères non-blancs précédée par au moins un blanc. Truc : vous allez vouloir chercher le premier caractère blanc ou le premier caractère non-blanc à partir d'un certain point dans une chaîne de caractères. Je vous propose une stratégie (que vous pouvez mettre en application ou non; à vous de voir) :
Suite au cours, j'ai écrit un petit texte d'introduction à la pensée fonctionnelle (avec JavaScript) pour vous aider à approcher la résolution de problème sous cet angle quelque peu nouveau pour vous. J'espère que ça vous aidera! |
|
31 janvier |
Au menu :
À la demande des étudiant(e)s, car ce n'est pas au menu du cours du tout, nous avons fait une toute petite incursion dans le monde de la multiprogrammation et du parallélisme. Nous en avons profité pour faire un lien entre les pratiques de JavaScript et celles d'autres langages. |
|
5 février |
Au menu :
|
|
7 février |
Au menu :
À la demande de la classe, nous avons fait une brève incursion dans l'histoire de notre science, mentionnant au passage David Hilbert, Jules Henri Poincaré, Alan Turing, Albert Einstein, Kurt Gödel et Alonzo Church. |
|
12 février |
Au menu :
|
|
14 février |
Au menu :
|
|
19 février |
Au menu :
Remise du TP00, en fin de séance. |
|
21 février |
Au menu :
|
|
26 février |
Au menu :
|
|
28 février |
Au menu :
|
|
5 mars |
Semaine de mise à niveau (cours suspendus) |
|
7 mars |
Semaine de mise à niveau (cours suspendus) |
|
12 mars |
Au menu :
|
|
14 mars |
J'ai dû m'absenter pour cause de maladie... Désolé! |
|
19 mars |
Au menu :
|
|
21 mars |
Au menu :
Remise du TP01, en début de séance. |
|
26 mars |
Au menu, brève pause du monde JavaScript :
|
|
28 mars |
Au menu :
|
|
2 avril |
Au menu :
Pour le reste de la séance, terminez l'activité formative proposée à L08 |
|
4 avril |
Au menu :
Parmi les thématiques survolées pour le prochain TP, on trouve :
|
|
9 avril |
Dû à la grève étudiante du 3 avril et aux élections provinciales du 7 avril, le calendrier est chamboulé. Conséquemment, le 9 avril est devenu un lundi, et nous n'avons pas de cours aujourd'hui. Vous allez me manquer (sérieusement, je vous trouve plutôt sympathiques!) |
|
11 avril |
Au menu :
Truc scout : si vous avez beaucoup de cas à couvrir, vous pouvez remplacer une série de if ... else ... par un tableau de fonctions : // ... ceci doit n'être fait qu'une seule fois (dans un singleton?) var options = new Array(); options[8] = traiterBackspace; // on suppose qu'une fonction de ce nom a été définie plus haut options[10] = traiterReturn; // idem options[13] = traiterReturn; // idem // etc. function traiterTouche(touche) { if(options[touche] != null) { // ou quelque chose du genre options[touche](); // appeler la fonction (on pourrait lui passer la touche en paramètre si c'est préférable) } } // bingo: on passe de plusieurs pages de code à quelques lignes! |
|
16 avril |
Au menu : J'avais prévu vous soumettre deux minitests cette semaine, mais le temps manque (et j'ai pas chômé!). Ainsi, je me limiterai à deux questions pratiques, à faire sur une base individuelle. La Q05 va comme suit :
{ mots : [ "J'aime", "mon", "prof", "$a@3!" ] } Autre exemple, si la fonction se nomme JSONinifer et si le JSON retourné suite le format ci-dessus, alors le programme suivant... function test() { var s = "J'aime mon\tprof! \n$a@3! t'sais genre..."; var res = JSONifier(s); alert('"' + res.mots[2] + '"'); } ...affichera "prof!". La Q06 va comme suit :
Assurez-vous d'avoir testé vos fonctions avant de les remettre, et de m'envoyer le fruit de votre travail par Colnet (utilisez des pièces jointes pour vos envois, car Colnet ne respecte pas l'indentation, ce qui rend le code très difficile à lire!) au plus tard jeudi le 17 avril à 18h. Si vous voulez tous vos points, il vous faudra exprimer chacune de ces deux fonctions par une seule instruction. |
|
18 avril |
Congé férié de Pâques |
|
23 avril |
Au menu :
|
|
25 avril |
Au menu :
|
|
30 avril |
Au menu :
Suite à sa présentation, Anne m'a fait parvenir les liens suivants :
|
|
2 mai |
Au menu :
|
|
7 mai |
Journée d'examen pour les cours de français de la formation générale (cours suspendus) |
|
9 mai |
Au menu :
|
|
14 mai |
Épreuve uniforme ministérielle de français (cours suspendus) |
|
15 mai |
Exceptionnellement, dû aux chamboulements du calendrier (grève étudiante du 3 avril, élections provinciales du 7 avril), ce jeudi devient un mercredi, et nous avons donc rendez-vous. Au menu :
|
|
16 mai |
Au menu : on remplace le cours théorique par un cours pratique. Vous pouvez me rejoindre en tout temps par courriel. Le minitest Q09 est disponible ici : 420KEF--Q09.pdf Les consignes données par Colnet sont répétées ci-dessous. Petit détail à ne pas oublier : si une ligne (ou une colonne) comprend plusieurs mots, vous trouverez plusieurs définitions, une par mot. Chaque définition débute par un caractère gras. Consignes données par Colnet (répétées pour vous simplifier la vie)
Allo toutes et tous! Quelques bémols :
Bizous! P.-S.: j'ai bien aimé vos présentations cet après-midi. Vous faites deux groupes franchement agréables avec lesquels travailler :) P.-P.-S. : j'ai mis Denis (Brunet) en copie conforme pour qu'il soit au courant que je vous ai donné cette liberté :) P.-P.-P.-S. : s'il y en a parmi vous qui souhaitent piger leur option d'A.S. demain ou pendant la fin de semaine, écrivez-moi en prenant soin d'identifier les noms de vos équipières et équipiers, et je vous retournerai par le même moyen l'option et le moment officiel de la pige (pour comptabiliser les 48 heures). |
|
21 mai |
À déterminer À la demande générale, le TP02 doit être remis au plus tard à la fin de cette séance. |
![]() |
Cliquez sur cette cible pour le plan de cours, sous forme électronique |
Les consignes des travaux pratiques pour la session H2014 vont comme suit.
![]() |
Consignes du TP00 |
![]() |
Consignes du TP01 |
![]() |
Consignes du TP02 |
Les consignes de l'activité synthèse pour la session H2014 vont comme suit.
![]() |
Vous trouverez ici les consignes de l'activité synthèse pour la session H2014 |
Les moyennes des résultats obtenus aux questions quasi-hebdomadaires pour la session H2014 suivent. Notez que l'écart-type par question n'est pas significatif étant donné l'échantillon (petit groupe) et la pondération des questions (sur cinq point, un point de différence représente , ce qui bousille quelque peu cette composante statistique).
Question | Séance | ||
---|---|---|---|
: |
Les moyennes des résultats des travaux pratiques pour la session H2014 suivent.
TP | Remise | Poids | |||
---|---|---|---|---|---|
|
|
|
|
||
|
|
|
|
||
|
|
|
|
||
≈L14
|
|
|
|
|
|
Cumulatif | : |
|
|||
: |
|
Vous trouverez ci-après le code source de divers exemples de vos notes de cours. Il est possible que le code ne soit pas exactement le même que dans les notes de cours puisque j'ai retouché ces dernières récemment (le site Web est un peu en retard côté mises à jour), mais les différences sont cosmétiques.
![]() |
À déterminer |
![]() |
À déterminer |