Logo ÉTS
Session
Cours
Responsable(s) Julien Gascon-Samson

Se connecter
 

Sauvegarde réussie
Echec de sauvegarde
Avertissement





Cours

Sujets Heures

Introduction / plan de cours

1 heure

Historique du web et anatomie d'un site web 1 heure
HTML et CSS 3 heures
JavaScript 1: principes et concepts de base, modèle orienté-objet prototypal 4 heures
JavaScript 2: modèle fonctionnel et fermetures 3 heures
Navigateur, minuteurs, modèle événementiel du DOM 3 heures
--- Intra (contenu approximatif) --- 3 heures
Manipulation du DOM 4 heures
AJAX, JSON, interactions client-serveur 2 heures
Node.js et JavaScript sur le serveur 4 heures
Patrons et architectures logicielles d’applications web, APIs, architectures REST 4 heures
Bases de données du web: SQL, NoSQL, MongoDB 3 heures

Sécurité du web

3 heures
Tendances émergentes (à déterminer) 1 heure
Examen final (période d'examens)

Notes:

  • Les heures sont des heures approximatives d’enseignement pour chaque sujet et sont sujettes à changement selon le déroulement du cours.
  • Le cours étant en évolution, il est possible que certains sujets soient couvert plus tôt ou plus tard dans la session.
  • La matière couverte à l’intra dépendra de l’état d’avancement dans la matière du cours à la date de l’examen.
 

Laboratoires et travaux pratiques

Les laboratoires visent dans un premier temps à mettre en pratique les connaissances acquises durant les cours. Dans un second temps, ils visent à permettre aux étudiants d'intégrer des notions et méthodes d'ingénierie acquises dans ce cours ainsi que dans des cours précédents (par exemple, conception logicielle, patrons de conception, documents et diagrammes d'architecture, tests). Finalement, les laboratoires visent également à permettre aux étudiants d'explorer des technologies complémentaires aux notions théoriques vues en classe (par exemple, l'utilisation de cadriciels (frameworks) web, d'APIs tierce-partie, etc.).

Les laboratoires sont effectués en partie dans les places attitrées à l’horaire à raison de 2h/semaine, et complétés sur votre temps personnel. Note: il est recommandé d'assister aux laboratoires, puisque c'est la manière privilégiée pour profiter de la disponibilité de votre chargé de laboratoire.

Concrètement, le volet "laboratoire" du cours consiste en un projet d’application pratique qui est réalisé en équipe, et qui est découplé en 3 livrables. Les dates d’évaluation des différents livrables seront communiquées au cours de la session, et il est important que chacun des membres de l’équipe soit présent à chacune des séances de lab où un livrable est évalué, puisqu’une démonstration des fonctionnalités du livrable devra être faite au chargé de laboratoire.

Note: les sujets et énoncés des différents livrables seront communiqués durant la session; mais ne suivront pas toujours la progression du cours théorique -- il sera demandé aux étudiant(e)s d'explorer par eux-mêmes certains concepts nécessaires à la réalisation des laboratoires, même s'ils n'ont pas encore été présentés durant le cours.


Utilisation d'outils d'ingénierie

Le « web » visant à être un monde ouvert, nous visons à réduire notre dépendance à des outils, systèmes d’exploitation ou environnements de développement spécifiques! Nous utiliserons les outils suivants (SVP assurez-vous qu'ils sont installés sur votre ordinateur) :

  • Les langages HTML, CSS, JavaScript et l’environnement d’exécution Node.js ainsi que le gestionnaire de modules npm

  • Un navigateur moderne qui respecte les standards du web

  • Les outils de débogage du navigateur

  • GitHub en tant qu’outil de contrôle de versions et de travail collaboratif

  • Les engins de bases de données MariaDB et MongoDB

  • Un outil de conception UML

  • Il est recommandé d’utiliser un éditeur de texte adéquat, tel que Atom, Sublime, VSCode, WebStorm, ou autre.

  • D’autres outils pertinents pourront s’ajouter à cette liste.

Notes:

  • Certains cadriciels et certaines technologies web spécifiques pourront être utilisées en laboratoire.