Présentation du langage HTML
- Histoire du HTML.
- Le XHTML et le HTML5.
- Les trois types de balises : block, inline et métadonnées.
- Le doctype. Le mode quirks. La DTD.
Démonstration
Affichage du code source de pages HTML, XHTML, HTML5. Présentation du validateur WC3.
Les nouvelles balises HTML
- Les balises et attributs obsolètes.
- Les balises : <mark>, <meter>, <time>, <figure>, <picture>...
- Les extensions de balises HTML existantes.
- Les attributs : a, fieldset, iframe, area, button…
- Les microformats. Présentation et avantages pour le référencement.
- Les nouveaux champs et attributs de formulaires : range, autofocus, placeholder, menu...
- Les dessins : canvas versus SVG.
- Les formats multimédia. codecs et API multimédia.
- Gestion vidéo et audio avec les nouvelles balises <audio> et <video> de HTML5.
Travaux pratiques
Création de templates HTML5. Positionnement d'éléments en absolu. Réalisation d'un lecteur multimédia.
Les sélecteurs CSS3
- Rappel sur la syntaxe : les sélecteurs, les règles.
- Sélecteurs de répétition nth-child(even), de cible target, de frère antérieur ~, d'enfant unique only-child.
- Media queries pour le chargement conditionnel des CSS selon la résolution ou l'orientation du terminal.
Travaux pratiques
Intégration de CSS3 aux applications web. Sélection d'éléments d'une page HTML5.
Le langage JavaScript
- Déclaration et portée des variables.
- Types de données (Number, Boolean, Date, Math, String, Array). Conversion de type. Détection de type avec typeof.
- Gestion des tableaux. Opérateurs logiques et arithmétiques. Boucles (for, while...).
- Création de fonctions et paramétrage variable.
- Faire un codage sécurisé avec la gestion d'erreur et les exceptions.
- Rappels sur les concepts objets. Développement objet en JavaScript : création de classes (méthodes, propriétés).
- Constructeur. Surcharge. Mots réservés prototype, this. Création d'instance. Usage d'object sur les classes dynamiques.
- Utilisation du format JSON pour la création de classes.
- Les objets prédéfinis du langage (Array, Date, String, RegExp...) et leur utilisation. Extension des objets prédéfinis.
Introduction à l'IoT
- État de l'art IoT.
- Projets représentatifs du marché de l'IoT et des wearables.
- Rappels d'électronique.
- L'apport des langages web dans l'IoT.
- Environnement de développement.
Démonstration
Démonstration de projets IoT développés en JavaScript. Découverte des API, frameworks et matériels supportés.
Le micro PC Raspberry Pi au service de l'IoT
- Comparatif avec Arduino.
- Installation et configuration de la carte.
- Mettre en place un environnement léger et performant avec Raspbian et Node.js.
- GPIO/USB : connecter d'autres périphériques (entrées/sorties, interfaces utilisateurs, stockage, communication).
- Frameworks Cylon.js et Node-RED.
Travaux pratiques
Afficher des émojis sur une matrice LED (Sense HAT).
Comment associer Arduino, Raspberry Pi et smartphone pour la domotique ?
- Connecter la carte Arduino au Raspberry Pi.
- Communiquer avec l'extérieur : exposer les fonctionnalités des objets connectés via une API web.
- Connexions temps réel.
Travaux pratiques
Contrôler les deux cartes avec un smartphone. Construire sa propre station météo. Créer des recettes IFTTT pour recevoir des notifications sur un terminal mobile.