M2 CCI - année 2025-2026
Cours Technologies du Web (TW)


Ce site regroupe les différents éléments (supports de cours, sujet de TPs...) du cours Technologies du WEB effectué dans le cadre du M2 CCI (Master 2 Compétences Complémentaires en Informatique) de l'UFR IM2AG (Informatique, Mathématiques et Mathématiques Appliquées Grenoble) de l'Université Grenoble Alpes. Ce cours est partagé avec le M2 GEOMAS (Master 2 Géomatique et Analyse Spatiale) de l'UFR IUGA (Institut d'Urbanisme et de Géographie Alpine).

Compétences visées

L’objectif global de cet enseignements est double :

  • Fournir une compréhension générale du fonctionnement du web et des technologies de base sur lesquelles il s'appuie à savoir les langages
    • HTML
    • CSS
    • JavaScript
  • Renforcer les compétences en programmation au travers d'un apprentissage approfondi du langage JavaScript.

A l'issue de ce cours, les étudiants doivent être capables de concevoir un site web statique (intégrant quelques éléments d'interaction gérés par JavaScript).

Note : Ce cours sera complété par d'autres enseignements :

  • Applications Web avancées (AWA), partagé avec les M2 GEOMAS. Ce cours permettra d'introduire des notions plus avancées de JavaScript (programmation asynchrone, API fetch, exceptions, modules ...) ainsi que le développement d'applications Web modernes au travers d'une introduction au framework Vue.js
  • Programmation Orientée Objet (POO), introduction au langage Java
  • Projet d'intégration (PI), partagé avec les M2 GEOMAS.

A l'issue de l'ensemble de ces enseignements, les étudiants auront une compréhension globale du fonctionnement des applications Web et des connaissances en programamton (en particulier en programmation orientée objets) leur permettant d’aborder l’ensemble des activités de développement logiciel. Sans en faire des spécialistes de telle ou telle technologie, ces enseignements visent à donner aux étudiants toutes les clés qui leur permettront de s’approprier plus facilement, selon leur évolution future, les langages, cadriciels (frameworks) et outils nécessaires au développement d’applications modernes.

Organisation générale

Le cours TW s’appuie sur une forte activité pratique. A chaque cours sont associés des exercices pratiques devant être réalisés sur machine. Les séances de travaux pratiques encadrées ont lieu indifféremment dans un environnement Windows ou Linux. Elles permettent d’introduire, en complément des langages étudiés en cours, les outils indispensables au développement d’applications : outils de développement web du navigateur (console, débogueur JavaScript, analyse de requêtes http...), environnement de développement intégré (IDE) (éditeur syntaxique, débogueur,...), gestion de versions (Git)...

Si les outils étudiés sont ceux du navigateur Firefox et l’IDE est VSCode, là aussi l’approche se veut suffisamment générale pour permettre aux étudiants d’évoluer ensuite plus facilement vers des outils spécifiques.

Volumes horaires

  • Cours : 19,5 h
  • TD/TP : 29,5 h
  • Total : 48 h
  • Travail personnel estimé : 60 h

Contenu

  • Introduction au web
    • Internet
    • Le web
    • historique
    • principes de fonctionnement
      • documents hypertexte
      • client web
      • serveur web
      • pages statiques vs pages dynamiques
  • Le langage HTML
    • langage de balises
    • éléments en ligne vs. élements en bloc
    • principaux élements en lignes
      • liens
      • images
      • span
      • ...
    • éléments en blocs
      • listes
      • tables
      • div
      • ...
  • Le langage CSS
    • régles et feuilles de style
    • les différents types de sélecteurs
    • positionnement des éléments
    • le framework Bootstrap
  • Le langage JavaScript
    • présentation de l'environnement JavaScript
      • dans un naviagateur
      • autonome : Node.js
    • éléments de base du langage
      • variables et types de données
      • fonctions
      • tableaux
      • ...
    • manipulation du DOM
    • gestion des événéments
    • introduction à l’approche objet
      • Notion d'objet
      • Classes et instances
      • Implémentation en JavaScript : prototypes
      • héritage et chaîne de prototypes

Contrôle des Connaissances

  • Contrôle Continu (Note CC)
    • 1 ou 2 Devoirs Surveillés (QCM, petits exercices de codage) pendant les séances de cours ou TP
  • Examen Terminal 1ère session (Note ET1)
    • semaine du 2 décembre 2024 - durée 3h
    • questions écrites + exercices codage sur machine (en environnement restreint sur les machines de l'UFR)
  • Note 1ère session :
    • Note Finale = 30% Note CC + 70% Note ET1
  • Examen 2ème session (note ET2)
    • semaine du 1er Septembre 2025 - durée 3h
    • questions écrites + exercices codage sur machine (en environnement restreint sur les machines de l'UFR)