Capgemini Institut 0144742410
24 rue du Gouverneur général Eboué 92136 Issy les Moulineaux
JavaScript : langage, frameworks Paris
JavaScript : langage, frameworks Paris
DURéE
2 jours
DATES
29-30 juin 2017
14-15 décembre 2017
LIEU
Paris
PRIX
1 910 € ht (2 292 € ttc)
Sommaire du séminaire
    Séminaires technique Institut Capgemini

    JavaScript : langage, frameworks

    >  concepts et connaissances indispensables




    Angular, React, Node, HTML5 : JavaScript est dans une phase d’industrialisation qui en fait une technologie majeure pour les équipes de développement. Côté client, JavaScript est au cœur de la spécification HTML5 et des frameworks Angular et React. Côté mobile, JavaScript trouve sa place dans les applications hybrides et natives avec des frameworks comme Ionic et React Native. Avec Node.js, l’utilisation de JavaScript s’étend à la partie serveur.

    En deux journées denses, ce séminaire explicite de façon didactique l’ensemble des concepts et connaissances indispensables à tout informaticien en charge de gérer ou de participer à des projets JavaScript.

    L’intervenant

    Bruno Leroux

    Bruno Leroux évolue dans le monde Java depuis la création du langage en 1995. En 1997, il participe, en tant que directeur technique, à la création de l'une des premières SSII françaises spécialisées sur Java et le développement d'applications Web. Aujourd'hui consultant indépendant, il alterne les missions de développement, d'architecture, d'expertise et de formation. C'est avec passion qu'il partage son expérience et sa veille technologique permanente sur les technologies Web.



    JavaScript : historique, principes et particularités


    Présentation de JavaScript

    • Naissance de JavaScript.
    • Les utilisations historiques : DHTML, Ajax, JQuery.
    • Qualité du support de JavaScript dans les navigateurs. Les principaux ‘moteurs’ JavaScript du marché.
    • JavaScript, EcmaScript, ActionScript, TypeScript : explications des différentes variantes.

    JavaScript : un langage original

    • Choix techniques lors de la création.
    • Principes de fonctionnement de JavaScript.
    • Programmation orientée prototype.
    • Programmation fonctionnelle.
    • Adoption de JavaScript par les développeurs Java, C++ et C#.

    Évolutions récentes du langage

    • Les apports de la spécification EcmaScript 6.
    • La notion de modules.
    • Les évolutions à venir.
    • Performances avec asm.js et WebAssembly.

    Outillage JavaScript

    • Principaux éditeurs de code et environnements de développement.
    • Débogage des applications JavaScript.
    • Automatisation des livrables : Grunt, Gulp, Bower, etc.
    • Gestion des tests : Mocha, Jasmine, PhantomJS, etc.

    Aperçu des différentes utilisations de JavaScript

    • Côté client : HTML5 et les frameworks Angular et React.
    • Côté mobiles : applications hybrides, PhoneGap et Apache Cordova, le framework Ionic, le projet React Native.
    • Côté serveur : Node.js, les frameworks Express et Meteor.

    JavaScript et HTML5


    JavaScript et communications réseau

    • Le format d’échange JSON.
    • Appels serveurs avec les APIs XMLHttpRequest et Fletch.
    • L’API WebSockets pour les communication bidirectionnelles.
    • L’API Server-Sent Event pour l’envoi de notifications par le serveur.
    • WebRTC pour les communications peer-to-peer.

    JavaScript et graphismes

    • L’API Canvas pour la 2D.
    • L’API WebGL pour la 3D.
    • Performances graphiques, accélération matérielle.
    • Principales librairies graphiques open-source.
    • Liens entre JavaScript et CSS3.
    • Rôle de JavaScript dans les frameworks de Responsive Web Design comme BootStrap.

    JavaScript et mode déconnecté

    • Problématique des applications web ‘Offline’.
    • Les API de stockage local : WebStorage et IndexedDB.
    • L’API Offline Web Application.
    • L’API Service Workers.

    Autres APIs HTML5 notables

    • File API.
    • Web Worker.
    • Media Capture, Web Speech API.
    • APIs pour les mobiles.

    Les frameworks JavaScript


    Principes des RIA (Rich Internet Application)

    • Présentation des ‘Single Page Application’ et des ‘Progressive Web Apps’.
    • Impact sur les développements d’applications Web.
    • Apports des frameworks.
    • Historique des frameworks JavaScript : Dojo, ExtJS, Backbone, Ember, Vue, Angular et React.
    • Les spécifications Web Components.

    Fonctionnalités principales des frameworks JavaScript

    • Notion de composants.
    • Gestion de modules.
    • Routeur.
    • Binding.
    • Injection de dépendances.

    Angular de Google

    • Historique du projet. Retour sur le succès rapide de la version 1.
    • Angular et le modèle MVC.
    • Les principes clés de la version 1 : les scopes, le ‘two-way databinding’, les contrôleurs, les routes, les directives, etc.
    • Forces et faiblesses de la version 1.
    • Angular 2 : une refonte complète. Les concepts d’Angular 2.
    • Importance de TypeScript dans Angular 2.
    • Quelle version choisir ? Quelle migration possible ?

    React de Facebook

    • La naissance du projet chez Facebook.
    • Une vision pragmatique de la notion de composant. Abandon des principes du MVC.
    • La notion de DOM virtuel. Le langage JSX.
    • La possibilité d’une utilisation côté client et côté serveur.
    • Les projets complémentaires utilisés par Facebook : Redux, Relay et GraphQL.

    Frameworks pour les applications mobiles

    • Les projets PhoneGap et Apache Cordova.
    • Performances JavaScript sur les mobiles.
    • Le framework Ionic pour les applications hybrides.
    • React Native la solution de FaceBook pour produire des applications mobiles natives en JavaScript.

    Liens avec la partie serveur


    Architectures serveur

    • WebServices et approche REST.
    • Notions d’API Web et de microservices.
    • Lien avec les serveurs d’applications Java.
    • Le format d’échange JSON.
    • Apports et limites de l’APIs WebSockets.

    Utilisation de JavaScript côté serveur

    • Présentation de Node.js.
    • Fonctionnement de Node.js.
    • Principes de la programmation réactive.
    • Les frameworks JavaScript côté serveur : Express, Meteor, etc.
    • JavaScript une alternative aux serveurs d’applications Java ?