Programmation Javascript (NFA041)

Présentation, Introduction, Démos

Olivier Pons
(pons@cnam.fr)

2022

Plan (indicatif) des cours JavaScript

  1. Introduction

    • historique
    • contexte d'execution : environnement hôte
    • mise en place des outils de ce cours
    • démos
  2. Bases de programmation illustrées en javascript,

    • types de base
    • constantes, variables, expressions et instructions
    • opérations de base
    • (entrées) sorties basiques en javascript
      • contexte navigateur
      • contexte node
    • structures de contrôles de base: conditionnelles et boucles
    • ensemble de valeurs, les tableaux
    • les fonctions
  3. Programmation événementielle et modèle d’exécution

  4. Les objets en javascript (partie 1 : le minimum vital ).

  5. Javascript dans le navigateur, manipulation du DOM, Verification de formulaire, etc.

  6. Un peu de programmation coté serveur en javascript

  7. Discussions client serveur, ajax, fetch ...

  8. Les objets en javascript (partie 2 : programmation par prototype vs classe).

  9. Programmation asynchrone avancée avec JavaScript

Intro (définition)

Description du langage

Javascript est un langage de programmation:

La suite des cours introduira toutes ces notions

Intro (historique 1: contexte)

⟹ Ajouter du dynamisme :

Intro (historique 1: contexte)

Dynamisme coté serveur (1)

Intro (historique 1: contexte)

Dynamisme coté serveur (2)

Cela manque d'interactivité:
si une saisie manque on refait tout
=> latence et surcharge réseau, coup du rendu graphique etc.

Intro (historique 1: contexte)

Dynamique côté client (1)

Intro (historique 1: contexte)

Dynamique côté client (1)

1995:

Attention: précisons que Java et Javascript sont deux langages DIFFÉRENTS

1996

1999

Intro (historique 1: contexte)

Évolutions de javascript

2009 :

2015 :

2016 :

...

2021 :

www.ecma-international.org/publications-and-standards/standards/ecma-262/

2022 :

Contexte d'execution : environnement hôte

But: fournit ses propres objets et fonctions en plus du noyau du langage.

Intros (Nos outils)

Demos

  1. Dans le Navigateur
  2. Dans Node
  3. Jsbin
  4. Replit

Comment charger et exécuter du Javascript dans le Navigateur?

  1. Via un(des) fichier(s) externes)
  <!DOCTYPE html>
  <html lang="fr">
    <head>
      ...
     <script src="monCodeJS.js"></script>
      ...
    </head>
    <body>
.   .. 
    </body>
</html>
  1. Entre 2 balises script, généralement dans le head mais pas que ...
  <!DOCTYPE html>
  <html lang="fr">
    <head>
      ...
     <script>
         //mon code JS

     </script>
      ...
    </head>
    <body>
.   .. 
    </body>
</html>
  1. Sur un gestionnaire d'événement (mal vu mais pratique au début ;-))
  <!DOCTYPE html>
  <html lang="fr">
    <head>
      ...
     
    </head>
    <body>
    ... 
    <button onclick="duCodeJS">clickez moi <button>
    </body>
</html>
  1. on peut les mélanger, on privilégiera le 1.

on peut sortir tout js du html (séparation des contenu).
remplacer les onclick du html par des addEventListener dans dans le js.