Fonctionnement général du web, éléments historiques, rôle des protocoles et standard fondamentaux (TCP/IP, DNS, HTTP, HTTPS, URL, HTML, CSS, Javascript), architecture client/serveur
Protocole HTTP
Standard URL
Langage HTML pour le contenu et CSS pour la présentation
Programmation dynamique côté client en javascript (initiation à la programmation asynchrone par événement)
Programmation côté serveur en python avec le framework flask
utilisation de formulaires, de bases de données, gestions de sessions et de comptes utilisateurs
architecture classiques d’applications web : par exemple modèle de données/vues/contrôleur et/ou application sur page unique
Déploiement
Notions de sécurité
Présentation des principales failles : XSS, injection SQL, CSRF, etc.
Mécanismes de protections
validations des données utilisateurs côté serveur (et/ou côté client)
échappement et injections SQL; HTTPS, tiers de confiance et encryption
encryption et signature des données de sessions
stockage de mot de passe par hash
environnement de développement versus production)
requêtes préparées
Notions liés au respect de la vie privée (RGPD), à l’accessibilité
Compétences à acquérir
Concevoir une application web comprenant des formulaires, des bases de données et un système d’authentification à l’aide d’un framework
Langue(s) d'enseignement
Français
Modalités d'organisation
Une grande partie des séances de travaux pratiques sera dédiée à la réalisation d’un projet.