Cours de Master sur la programmation Web et introduction aux notions de sécurité du Web. Dans ce cours, les étudiant.e.s sont en groupe et doivent réaliser un projet conséquent. Le premier TD sert à maîtriser les bases. Il est demandé une excellente autonomie de la part des étudiant.e.s, d’aller chercher des techniques et outils largement au delà de l’information contenue dans les CM. Nous apprenons, au travers du projet guidé, à travailler réellement en groupe, à trouver des solutions afin de pouvoir être performant seul ou en groupe à l’issue du cours.
Informations pratiques
Cours les mercredis matin (amphi G - Bâtiment Fermat).
TDs les mercredis après-midi (G20X - Bâtiment Germain).
Dans tous les cas se référer à CELCAT si changement.
Responsable du cours : Yann Rotella
Chargé de TD : Yann Rotella et Jules Baudrin
Intervenant extérieur : Thomas Rousseau
Calendrier prévisionnel
31 janvier (9h40 -> 12h50): CM Web Statique, URLs, DOM
- Explication de ce qui est attendu
- Le Web, les bases
- HTML et CSS et BoxModel
- Javascript et le DOM
- Slides du cours ICI et ICI et ICI
- Comment coder en 2024 - Discussion IA ChatGPT
7 février (11h20 -> 17h00): Web dynamique et Premier TP
- HTTP
- Anatomie d’une application
- Comment coder, les packages
- Maintenir l’état
- Les cookies
- Les API, librairies et Frameworks
- TP Javascript et le DOM Sujet
- Slides cours ICI
14 février (11h20 -> 17h00): JS avancé, Quelques questions de sécurité
- Bases de données
- Async, await and promises
- Sockets
- Anonymat (Tor)
- Stockage de mots de passe
- Sécurité liée aux cookies - générer les valeurs
- TP - TD: discussion sur le projet et choix
- Slides cours ICI
28 février (9h50 -> 17h00): Sécurité Web, crypto application + Première séance notée
- SSL/TLS
- Certificats
- Fonctions de hachages cryptographiques
- Backdoors et Régulation
- Cours Thomas Rousseau
- Slides cours ICI
13 mars (13h50 -> 17h00): Séance 2 notée
3 avril (13h50 -> 17h00): Séance 3 notée
10 avril (13h50 -> 17h00): Séance 4 notée
14 mai : Journée de soutenances présentiel
- G105 Bâtiment Germain
Modalités d’évaluation :
Contrôle Continu réparti comme suit:
- CC individuel, sur 3, sur chaque rôle par semaine (12)
- CC individuel, commun (8)
- Soutenance, Rapport et code final, commun (20)
Pour plus de détails, se référer à la grille évaluatrice
Bibliographie et liens utiles
- events et
- DOM
- Unobtrusive JS et eloquent JS et guide et w3school
- table javascript
- className
- functions javascript
- HTMLelement
- HTMLref
- HTML forms ou bien
- Media Queries
- W3school
- Jigsaw
- Le site du Cours de Luca de Feo
- Pour démarrer: Roadmap
- RFC URL
- Le site de W3 school
- Le validateur du W3
- CSS validateur
- Règles CSS: spécificité RefMDN w3
- Le DevTools Guide
- Positionnement en CSS: Pos et Float
- FlexBox
- Grid CSS: lien MDN
- Event-MDN
- DOM-MDN
- JavaScript-MDN
- JS-W3
- React
- Angular