SlideShare une entreprise Scribd logo
1  sur  13
Télécharger pour lire hors ligne
JS, Quoi de neuf ?
ES2015, ES2016, Babel, Typescript, etc
En 2015, JS est devenu agile !
Sommaire
1. Historique
2. ES2015/ES2016
3. Compatibilité
● Frameworks
● Packet managers
● Preprocessors
● Node.js
● AJAX
● Apparition de librairies (jquery,
mootools, etc)
● Augmentation notable de la
bande passante
2000/2004
● Browser war (IE gagne)
● Pas d’évolution majeure de JS
Timeline
90’s
● Browser war (IE vs Netscape)
● Gifs, dhtml
● Compteurs de visites
● Js doit être optimisé pour chaque
navigateur
2005/2009 2010/2016
Chronologie
● 1995: Netscape crée mocha -> livescript -> javascript
● 1997: Standardisation EcmaScript -> ES1
● 1998: ES2
● 1999: ES3 (try/catch, strings, regexp, etc)
● … ES4 est annulé
● 2009: ES5 (‘use strict’, JSON, bind(), etc)
● 2015: ES6 est rebaptisé ES2015
● 2016: ES2016 (ES7)
ES2015
● Release majeure: la plus grande mise à jour jamais effectuée
● ~70 nouvelles features
● S’adapter aux grosses applications
● Améliorer la syntaxe
● Key features: Promesses, import/export, classes, let/const, etc
ES2016
● Release mineure
● A prouvé que le nouveau modèle fonctionne
Compatibilité
Comment faire fonctionner sur les anciens navigateurs ?
1. Polyfill
Essaie de détecter la présence ou l’absence d’une API dans le navigateur et d’émuler son comportement, ainsi certaines
fonctionnalités peuvent être utilisées de manière transparente comme si elles étaient implémentées nativement
2. Transpilers
Transforme le javascript en ré-écrivant certaines portions du code uniquement avec du javascript compatible (sans utiliser
certaines fonctionnalités) pour qu’il puisse s'exécuter in fine dans certains navigateurs
Babel/ts/traceur
● Compile en js
● Utilisé par toutes les librairies majeures
TypeScript
● Superset: tout code js est valide en TypeScript
● Compile en js
● Développé par Microsoft
● Adopté par angular 2
TLDR;
● JS est devenu Agile: une version par an
● Le langage s’est brusquement modernisé et a évolué en profondeur
● Dans le futur, il va évoluer beaucoup plus régulièrement
● Il existe des solutions simples à mettre en oeuvre pour la compatibilité avec
les anciens navigateurs
● Il faut commencer à l’utiliser dès que possible :)
Merci

Contenu connexe

Tendances

[Java] Versioning & Nouveautés JDK 12-15
[Java] Versioning & Nouveautés JDK 12-15[Java] Versioning & Nouveautés JDK 12-15
[Java] Versioning & Nouveautés JDK 12-15Romain Schlick
 
Node.js et MongoDB: Mongoose
Node.js et MongoDB: MongooseNode.js et MongoDB: Mongoose
Node.js et MongoDB: Mongoosejeromegn
 
Adopter les web components avec stencil.js - Front Side
Adopter les web components avec stencil.js - Front SideAdopter les web components avec stencil.js - Front Side
Adopter les web components avec stencil.js - Front SideThomas Champion
 
Introduction to Rust in Production - Servo Mozilla project (Talk)
Introduction to Rust in Production - Servo Mozilla project (Talk)Introduction to Rust in Production - Servo Mozilla project (Talk)
Introduction to Rust in Production - Servo Mozilla project (Talk)Quentin Frémeaux
 
Automatisation des gestionnaires de contenus (CMS)
Automatisation des gestionnaires de contenus (CMS)Automatisation des gestionnaires de contenus (CMS)
Automatisation des gestionnaires de contenus (CMS)Christophe Villeneuve
 
Introduction to Rust in Production - Servo Mozilla project (Slides)
Introduction to Rust in Production - Servo Mozilla project (Slides)Introduction to Rust in Production - Servo Mozilla project (Slides)
Introduction to Rust in Production - Servo Mozilla project (Slides)Quentin Frémeaux
 
Node.js et les nouvelles technologies javascript
Node.js et les nouvelles technologies javascriptNode.js et les nouvelles technologies javascript
Node.js et les nouvelles technologies javascriptKhalid Jebbari
 
Enib cours c.a.i. web - séance #6 : introduction à node js
Enib   cours c.a.i. web - séance #6 : introduction à node jsEnib   cours c.a.i. web - séance #6 : introduction à node js
Enib cours c.a.i. web - séance #6 : introduction à node jsHoracio Gonzalez
 
Démarrer la création de blocs
Démarrer la création de blocsDémarrer la création de blocs
Démarrer la création de blocsBenoît Chantre
 
Présentation de nodejs
Présentation de nodejsPrésentation de nodejs
Présentation de nodejs13p
 
Challenge Exakis - Visual studio 2015
Challenge Exakis - Visual studio 2015Challenge Exakis - Visual studio 2015
Challenge Exakis - Visual studio 2015Jonathan Le Guellec
 
Des poneys à Liberation.fr
Des poneys à Liberation.frDes poneys à Liberation.fr
Des poneys à Liberation.frliberation_dev
 
NodeJs, une introduction
NodeJs, une introductionNodeJs, une introduction
NodeJs, une introductionToxicode
 
Geek Time Juin 2016 : Node.js
Geek Time Juin 2016 : Node.jsGeek Time Juin 2016 : Node.js
Geek Time Juin 2016 : Node.jsOLBATI
 

Tendances (20)

[Java] Versioning & Nouveautés JDK 12-15
[Java] Versioning & Nouveautés JDK 12-15[Java] Versioning & Nouveautés JDK 12-15
[Java] Versioning & Nouveautés JDK 12-15
 
Node.js et MongoDB: Mongoose
Node.js et MongoDB: MongooseNode.js et MongoDB: Mongoose
Node.js et MongoDB: Mongoose
 
Adopter les web components avec stencil.js - Front Side
Adopter les web components avec stencil.js - Front SideAdopter les web components avec stencil.js - Front Side
Adopter les web components avec stencil.js - Front Side
 
Livre Blanc Web temps réel - Node JS
Livre Blanc Web temps réel - Node JSLivre Blanc Web temps réel - Node JS
Livre Blanc Web temps réel - Node JS
 
Introduction à Node.js
Introduction à Node.js Introduction à Node.js
Introduction à Node.js
 
Introduction to Rust in Production - Servo Mozilla project (Talk)
Introduction to Rust in Production - Servo Mozilla project (Talk)Introduction to Rust in Production - Servo Mozilla project (Talk)
Introduction to Rust in Production - Servo Mozilla project (Talk)
 
Automatisation des gestionnaires de contenus (CMS)
Automatisation des gestionnaires de contenus (CMS)Automatisation des gestionnaires de contenus (CMS)
Automatisation des gestionnaires de contenus (CMS)
 
Express1
Express1Express1
Express1
 
Introduction to Rust in Production - Servo Mozilla project (Slides)
Introduction to Rust in Production - Servo Mozilla project (Slides)Introduction to Rust in Production - Servo Mozilla project (Slides)
Introduction to Rust in Production - Servo Mozilla project (Slides)
 
Node.js et les nouvelles technologies javascript
Node.js et les nouvelles technologies javascriptNode.js et les nouvelles technologies javascript
Node.js et les nouvelles technologies javascript
 
Enib cours c.a.i. web - séance #6 : introduction à node js
Enib   cours c.a.i. web - séance #6 : introduction à node jsEnib   cours c.a.i. web - séance #6 : introduction à node js
Enib cours c.a.i. web - séance #6 : introduction à node js
 
Démarrer la création de blocs
Démarrer la création de blocsDémarrer la création de blocs
Démarrer la création de blocs
 
Human talks-bootstrap
Human talks-bootstrapHuman talks-bootstrap
Human talks-bootstrap
 
Présentation de nodejs
Présentation de nodejsPrésentation de nodejs
Présentation de nodejs
 
Challenge Exakis - Visual studio 2015
Challenge Exakis - Visual studio 2015Challenge Exakis - Visual studio 2015
Challenge Exakis - Visual studio 2015
 
Des poneys à Liberation.fr
Des poneys à Liberation.frDes poneys à Liberation.fr
Des poneys à Liberation.fr
 
Sulu LE CMS Ultime
Sulu LE CMS UltimeSulu LE CMS Ultime
Sulu LE CMS Ultime
 
NodeJs, une introduction
NodeJs, une introductionNodeJs, une introduction
NodeJs, une introduction
 
Geek Time Juin 2016 : Node.js
Geek Time Juin 2016 : Node.jsGeek Time Juin 2016 : Node.js
Geek Time Juin 2016 : Node.js
 
Ap les boucles - Débutants
Ap   les boucles - DébutantsAp   les boucles - Débutants
Ap les boucles - Débutants
 

En vedette

Intro Module Formation Viadeo
Intro Module Formation ViadeoIntro Module Formation Viadeo
Intro Module Formation ViadeoGuillaume Eouzan
 
Bol pediatr2010 50_043-047
Bol pediatr2010 50_043-047Bol pediatr2010 50_043-047
Bol pediatr2010 50_043-047Jessica Yazmín
 
Alejandro alonso pedraza.
Alejandro alonso pedraza.Alejandro alonso pedraza.
Alejandro alonso pedraza.cararriba
 
Investigacion de campo
Investigacion de campoInvestigacion de campo
Investigacion de campoØtniel Trrs'
 
Base de datos
Base de datosBase de datos
Base de datosLoo-ZX
 
Ejercicios mec de fluidos
Ejercicios mec de fluidosEjercicios mec de fluidos
Ejercicios mec de fluidosmiguelescobar29
 
Devenir psychiatre en france regard de l’interne.
Devenir psychiatre en france   regard de l’interne.Devenir psychiatre en france   regard de l’interne.
Devenir psychiatre en france regard de l’interne.Réseau Pro Santé
 
Proyecto Tecnología
Proyecto Tecnología Proyecto Tecnología
Proyecto Tecnología Tatiana2112
 
Biografía de carlos gardel 1º 3º
Biografía de carlos gardel 1º 3ºBiografía de carlos gardel 1º 3º
Biografía de carlos gardel 1º 3ºRochi-eugenia
 
Conférence Club Social Médias Réunion : Médias sociaux, vie privée, entreprise
Conférence Club Social Médias Réunion : Médias sociaux, vie privée, entrepriseConférence Club Social Médias Réunion : Médias sociaux, vie privée, entreprise
Conférence Club Social Médias Réunion : Médias sociaux, vie privée, entrepriseRemy EXELMANS
 
Astrid silem 1 basico
Astrid silem 1 basicoAstrid silem 1 basico
Astrid silem 1 basicomichulitas
 
Màrqueting i publicitat cultural
Màrqueting i publicitat culturalMàrqueting i publicitat cultural
Màrqueting i publicitat culturalMarta Pallares
 
Nayibe Flórez Moreno Portafolio Digital
Nayibe  Flórez Moreno Portafolio  DigitalNayibe  Flórez Moreno Portafolio  Digital
Nayibe Flórez Moreno Portafolio Digitalyibe11
 

En vedette (20)

2ème édition du Baromètre du Développement International
2ème édition du Baromètre du Développement International2ème édition du Baromètre du Développement International
2ème édition du Baromètre du Développement International
 
Presentación darwin garces
Presentación darwin garcesPresentación darwin garces
Presentación darwin garces
 
Discurso expositivo
Discurso expositivo Discurso expositivo
Discurso expositivo
 
C y p el barrio 555
C y p el barrio 555C y p el barrio 555
C y p el barrio 555
 
Intro Module Formation Viadeo
Intro Module Formation ViadeoIntro Module Formation Viadeo
Intro Module Formation Viadeo
 
Bol pediatr2010 50_043-047
Bol pediatr2010 50_043-047Bol pediatr2010 50_043-047
Bol pediatr2010 50_043-047
 
Alejandro alonso pedraza.
Alejandro alonso pedraza.Alejandro alonso pedraza.
Alejandro alonso pedraza.
 
Investigacion de campo
Investigacion de campoInvestigacion de campo
Investigacion de campo
 
Base de datos
Base de datosBase de datos
Base de datos
 
Brand Duchy 2015
Brand Duchy 2015Brand Duchy 2015
Brand Duchy 2015
 
Ejercicios mec de fluidos
Ejercicios mec de fluidosEjercicios mec de fluidos
Ejercicios mec de fluidos
 
Devenir psychiatre en france regard de l’interne.
Devenir psychiatre en france   regard de l’interne.Devenir psychiatre en france   regard de l’interne.
Devenir psychiatre en france regard de l’interne.
 
Proyecto Tecnología
Proyecto Tecnología Proyecto Tecnología
Proyecto Tecnología
 
Biografía de carlos gardel 1º 3º
Biografía de carlos gardel 1º 3ºBiografía de carlos gardel 1º 3º
Biografía de carlos gardel 1º 3º
 
Conférence Club Social Médias Réunion : Médias sociaux, vie privée, entreprise
Conférence Club Social Médias Réunion : Médias sociaux, vie privée, entrepriseConférence Club Social Médias Réunion : Médias sociaux, vie privée, entreprise
Conférence Club Social Médias Réunion : Médias sociaux, vie privée, entreprise
 
Conceptos - Marketing y mercadeo
Conceptos - Marketing y mercadeoConceptos - Marketing y mercadeo
Conceptos - Marketing y mercadeo
 
Teacher's edition
Teacher's editionTeacher's edition
Teacher's edition
 
Astrid silem 1 basico
Astrid silem 1 basicoAstrid silem 1 basico
Astrid silem 1 basico
 
Màrqueting i publicitat cultural
Màrqueting i publicitat culturalMàrqueting i publicitat cultural
Màrqueting i publicitat cultural
 
Nayibe Flórez Moreno Portafolio Digital
Nayibe  Flórez Moreno Portafolio  DigitalNayibe  Flórez Moreno Portafolio  Digital
Nayibe Flórez Moreno Portafolio Digital
 

Similaire à Js, quoi de neuf ? - strasbourg js - septembre 2016

Responsible Design ou Le web moderne à destination de tous
Responsible Design ou Le web moderne à destination de tousResponsible Design ou Le web moderne à destination de tous
Responsible Design ou Le web moderne à destination de tousjwajsberg
 
Cours n°1.1-Introduction.pdf angularrrrr
Cours n°1.1-Introduction.pdf angularrrrrCours n°1.1-Introduction.pdf angularrrrr
Cours n°1.1-Introduction.pdf angularrrrrinesrdissi60
 
Etude rapide sur les frameworks Front-end (AngularJS vs *JS)
Etude rapide sur les frameworks Front-end (AngularJS vs *JS)Etude rapide sur les frameworks Front-end (AngularJS vs *JS)
Etude rapide sur les frameworks Front-end (AngularJS vs *JS)Bilel ZEGHAD
 
Nantes jug 2018 - Java le changement c'est maintenant
Nantes jug 2018 - Java le changement c'est maintenantNantes jug 2018 - Java le changement c'est maintenant
Nantes jug 2018 - Java le changement c'est maintenantJean-Michel Doudoux
 
Introduction à Play Framework 2
Introduction à Play Framework 2Introduction à Play Framework 2
Introduction à Play Framework 2Samy Dindane
 
Gwt oxiane-novae-lr
Gwt oxiane-novae-lrGwt oxiane-novae-lr
Gwt oxiane-novae-lroxmed
 
Javascript & tools
Javascript & toolsJavascript & tools
Javascript & toolsSlim Soussi
 
Présentation Rex GWT 2.0
Présentation Rex GWT 2.0Présentation Rex GWT 2.0
Présentation Rex GWT 2.0Ippon
 
JavaScript: bonnes pratiques, astuces, et cauchemars
JavaScript: bonnes pratiques, astuces, et cauchemarsJavaScript: bonnes pratiques, astuces, et cauchemars
JavaScript: bonnes pratiques, astuces, et cauchemarsFabian Vilers
 
FinistJUG - J’ai besoin d’une appli web rapidement
FinistJUG -   J’ai besoin d’une appli web rapidementFinistJUG -   J’ai besoin d’une appli web rapidement
FinistJUG - J’ai besoin d’une appli web rapidementHoracio Gonzalez
 
Enib cours c.a.i. web - séance #5 - j’ai besoin d’une appli web rapidement !
Enib   cours c.a.i. web - séance #5 - j’ai besoin d’une appli web rapidement !Enib   cours c.a.i. web - séance #5 - j’ai besoin d’une appli web rapidement !
Enib cours c.a.i. web - séance #5 - j’ai besoin d’une appli web rapidement !Horacio Gonzalez
 
ENIB 2013-2014 - CAI Web #3: J’ai besoin d’une appli web rapidement
ENIB 2013-2014 - CAI Web #3: J’ai besoin d’une appli web rapidementENIB 2013-2014 - CAI Web #3: J’ai besoin d’une appli web rapidement
ENIB 2013-2014 - CAI Web #3: J’ai besoin d’une appli web rapidementHoracio Gonzalez
 
Etat de l'art Server-Side JavaScript - JS Geneve
Etat de l'art Server-Side JavaScript - JS GeneveEtat de l'art Server-Side JavaScript - JS Geneve
Etat de l'art Server-Side JavaScript - JS GeneveAlexandre Morgaut
 
Quoi de neuf à Devoxx France 2017 ?
Quoi de neuf à Devoxx France 2017 ?Quoi de neuf à Devoxx France 2017 ?
Quoi de neuf à Devoxx France 2017 ?Antoine Rey
 
Formation JavaScript full-stack (JS, jQuery, Node.js...)
Formation JavaScript full-stack (JS, jQuery, Node.js...)Formation JavaScript full-stack (JS, jQuery, Node.js...)
Formation JavaScript full-stack (JS, jQuery, Node.js...)guicara
 
Gulp fiction, Builder, tester, livrer, sans tomber dans les poms - breizhcam...
Gulp fiction, Builder, tester, livrer, sans tomber dans les poms  - breizhcam...Gulp fiction, Builder, tester, livrer, sans tomber dans les poms  - breizhcam...
Gulp fiction, Builder, tester, livrer, sans tomber dans les poms - breizhcam...mbrechet
 
Nouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et Mobile
Nouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et MobileNouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et Mobile
Nouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et MobileIppon
 
Nouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et mobilité
Nouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et mobilitéNouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et mobilité
Nouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et mobilitéJulien Dubois
 
Google Web Toolkit - GWT
Google Web Toolkit - GWTGoogle Web Toolkit - GWT
Google Web Toolkit - GWTmohamedmed1694
 
Gtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogyGtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogySacha Leprêtre
 

Similaire à Js, quoi de neuf ? - strasbourg js - septembre 2016 (20)

Responsible Design ou Le web moderne à destination de tous
Responsible Design ou Le web moderne à destination de tousResponsible Design ou Le web moderne à destination de tous
Responsible Design ou Le web moderne à destination de tous
 
Cours n°1.1-Introduction.pdf angularrrrr
Cours n°1.1-Introduction.pdf angularrrrrCours n°1.1-Introduction.pdf angularrrrr
Cours n°1.1-Introduction.pdf angularrrrr
 
Etude rapide sur les frameworks Front-end (AngularJS vs *JS)
Etude rapide sur les frameworks Front-end (AngularJS vs *JS)Etude rapide sur les frameworks Front-end (AngularJS vs *JS)
Etude rapide sur les frameworks Front-end (AngularJS vs *JS)
 
Nantes jug 2018 - Java le changement c'est maintenant
Nantes jug 2018 - Java le changement c'est maintenantNantes jug 2018 - Java le changement c'est maintenant
Nantes jug 2018 - Java le changement c'est maintenant
 
Introduction à Play Framework 2
Introduction à Play Framework 2Introduction à Play Framework 2
Introduction à Play Framework 2
 
Gwt oxiane-novae-lr
Gwt oxiane-novae-lrGwt oxiane-novae-lr
Gwt oxiane-novae-lr
 
Javascript & tools
Javascript & toolsJavascript & tools
Javascript & tools
 
Présentation Rex GWT 2.0
Présentation Rex GWT 2.0Présentation Rex GWT 2.0
Présentation Rex GWT 2.0
 
JavaScript: bonnes pratiques, astuces, et cauchemars
JavaScript: bonnes pratiques, astuces, et cauchemarsJavaScript: bonnes pratiques, astuces, et cauchemars
JavaScript: bonnes pratiques, astuces, et cauchemars
 
FinistJUG - J’ai besoin d’une appli web rapidement
FinistJUG -   J’ai besoin d’une appli web rapidementFinistJUG -   J’ai besoin d’une appli web rapidement
FinistJUG - J’ai besoin d’une appli web rapidement
 
Enib cours c.a.i. web - séance #5 - j’ai besoin d’une appli web rapidement !
Enib   cours c.a.i. web - séance #5 - j’ai besoin d’une appli web rapidement !Enib   cours c.a.i. web - séance #5 - j’ai besoin d’une appli web rapidement !
Enib cours c.a.i. web - séance #5 - j’ai besoin d’une appli web rapidement !
 
ENIB 2013-2014 - CAI Web #3: J’ai besoin d’une appli web rapidement
ENIB 2013-2014 - CAI Web #3: J’ai besoin d’une appli web rapidementENIB 2013-2014 - CAI Web #3: J’ai besoin d’une appli web rapidement
ENIB 2013-2014 - CAI Web #3: J’ai besoin d’une appli web rapidement
 
Etat de l'art Server-Side JavaScript - JS Geneve
Etat de l'art Server-Side JavaScript - JS GeneveEtat de l'art Server-Side JavaScript - JS Geneve
Etat de l'art Server-Side JavaScript - JS Geneve
 
Quoi de neuf à Devoxx France 2017 ?
Quoi de neuf à Devoxx France 2017 ?Quoi de neuf à Devoxx France 2017 ?
Quoi de neuf à Devoxx France 2017 ?
 
Formation JavaScript full-stack (JS, jQuery, Node.js...)
Formation JavaScript full-stack (JS, jQuery, Node.js...)Formation JavaScript full-stack (JS, jQuery, Node.js...)
Formation JavaScript full-stack (JS, jQuery, Node.js...)
 
Gulp fiction, Builder, tester, livrer, sans tomber dans les poms - breizhcam...
Gulp fiction, Builder, tester, livrer, sans tomber dans les poms  - breizhcam...Gulp fiction, Builder, tester, livrer, sans tomber dans les poms  - breizhcam...
Gulp fiction, Builder, tester, livrer, sans tomber dans les poms - breizhcam...
 
Nouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et Mobile
Nouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et MobileNouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et Mobile
Nouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et Mobile
 
Nouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et mobilité
Nouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et mobilitéNouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et mobilité
Nouveau look pour une nouvelle vie : HTML5, Spring, NoSQL et mobilité
 
Google Web Toolkit - GWT
Google Web Toolkit - GWTGoogle Web Toolkit - GWT
Google Web Toolkit - GWT
 
Gtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogyGtug2 Mobile app with web technlogy
Gtug2 Mobile app with web technlogy
 

Dernier

BOW 2024 - Le bâtiment multicritère porcin
BOW 2024 - Le bâtiment multicritère porcinBOW 2024 - Le bâtiment multicritère porcin
BOW 2024 - Le bâtiment multicritère porcinidelewebmestre
 
BOW 2024 -3-7- Impact bâtiment stress thermique Vaches laitières
BOW 2024 -3-7- Impact bâtiment stress thermique Vaches laitièresBOW 2024 -3-7- Impact bâtiment stress thermique Vaches laitières
BOW 2024 -3-7- Impact bâtiment stress thermique Vaches laitièresidelewebmestre
 
Accompagnement de l'agrivoltaïsme dans le département de la Nièvre
Accompagnement de l'agrivoltaïsme dans le département de la NièvreAccompagnement de l'agrivoltaïsme dans le département de la Nièvre
Accompagnement de l'agrivoltaïsme dans le département de la Nièvreidelewebmestre
 
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleur
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleurBOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleur
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleuridelewebmestre
 
anas transcript 111111111111111111111111
anas transcript 111111111111111111111111anas transcript 111111111111111111111111
anas transcript 111111111111111111111111zaidtaim1214
 
BOW 2024 - 3 1 - Les infrastructures équestres et le changement climatique
BOW 2024 - 3 1 - Les infrastructures équestres et le changement climatiqueBOW 2024 - 3 1 - Les infrastructures équestres et le changement climatique
BOW 2024 - 3 1 - Les infrastructures équestres et le changement climatiqueidelewebmestre
 
BOW 2024 - L'enrichissement du milieu des chèvres laitières
BOW 2024 - L'enrichissement du milieu des chèvres laitièresBOW 2024 - L'enrichissement du milieu des chèvres laitières
BOW 2024 - L'enrichissement du milieu des chèvres laitièresidelewebmestre
 
BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...
BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...
BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...idelewebmestre
 
BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...
BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...
BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...idelewebmestre
 

Dernier (10)

BOW 2024 - Le bâtiment multicritère porcin
BOW 2024 - Le bâtiment multicritère porcinBOW 2024 - Le bâtiment multicritère porcin
BOW 2024 - Le bâtiment multicritère porcin
 
BOW 2024 -3-7- Impact bâtiment stress thermique Vaches laitières
BOW 2024 -3-7- Impact bâtiment stress thermique Vaches laitièresBOW 2024 -3-7- Impact bâtiment stress thermique Vaches laitières
BOW 2024 -3-7- Impact bâtiment stress thermique Vaches laitières
 
Accompagnement de l'agrivoltaïsme dans le département de la Nièvre
Accompagnement de l'agrivoltaïsme dans le département de la NièvreAccompagnement de l'agrivoltaïsme dans le département de la Nièvre
Accompagnement de l'agrivoltaïsme dans le département de la Nièvre
 
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleur
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleurBOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleur
BOW 2024 - 3-5 - Des solutions numériques pour se préparer aux pics de chaleur
 
anas transcript 111111111111111111111111
anas transcript 111111111111111111111111anas transcript 111111111111111111111111
anas transcript 111111111111111111111111
 
BOW 2024 - 3 1 - Les infrastructures équestres et le changement climatique
BOW 2024 - 3 1 - Les infrastructures équestres et le changement climatiqueBOW 2024 - 3 1 - Les infrastructures équestres et le changement climatique
BOW 2024 - 3 1 - Les infrastructures équestres et le changement climatique
 
BOW 2024 - L'enrichissement du milieu des chèvres laitières
BOW 2024 - L'enrichissement du milieu des chèvres laitièresBOW 2024 - L'enrichissement du milieu des chèvres laitières
BOW 2024 - L'enrichissement du milieu des chèvres laitières
 
Webinaire lésions podales_04.04.2024.pptx
Webinaire lésions podales_04.04.2024.pptxWebinaire lésions podales_04.04.2024.pptx
Webinaire lésions podales_04.04.2024.pptx
 
BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...
BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...
BOW 2024 - Nouveaux modes de logement pour des veaux de boucherie avec accès ...
 
BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...
BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...
BOW 2024 - 3-8 - Adaptation des bâtiments d'élevages de volailles au changeme...
 

Js, quoi de neuf ? - strasbourg js - septembre 2016

  • 1. JS, Quoi de neuf ? ES2015, ES2016, Babel, Typescript, etc
  • 2. En 2015, JS est devenu agile !
  • 4.
  • 5. ● Frameworks ● Packet managers ● Preprocessors ● Node.js ● AJAX ● Apparition de librairies (jquery, mootools, etc) ● Augmentation notable de la bande passante 2000/2004 ● Browser war (IE gagne) ● Pas d’évolution majeure de JS Timeline 90’s ● Browser war (IE vs Netscape) ● Gifs, dhtml ● Compteurs de visites ● Js doit être optimisé pour chaque navigateur 2005/2009 2010/2016
  • 6. Chronologie ● 1995: Netscape crée mocha -> livescript -> javascript ● 1997: Standardisation EcmaScript -> ES1 ● 1998: ES2 ● 1999: ES3 (try/catch, strings, regexp, etc) ● … ES4 est annulé ● 2009: ES5 (‘use strict’, JSON, bind(), etc) ● 2015: ES6 est rebaptisé ES2015 ● 2016: ES2016 (ES7)
  • 7. ES2015 ● Release majeure: la plus grande mise à jour jamais effectuée ● ~70 nouvelles features ● S’adapter aux grosses applications ● Améliorer la syntaxe ● Key features: Promesses, import/export, classes, let/const, etc
  • 8. ES2016 ● Release mineure ● A prouvé que le nouveau modèle fonctionne
  • 9. Compatibilité Comment faire fonctionner sur les anciens navigateurs ? 1. Polyfill Essaie de détecter la présence ou l’absence d’une API dans le navigateur et d’émuler son comportement, ainsi certaines fonctionnalités peuvent être utilisées de manière transparente comme si elles étaient implémentées nativement 2. Transpilers Transforme le javascript en ré-écrivant certaines portions du code uniquement avec du javascript compatible (sans utiliser certaines fonctionnalités) pour qu’il puisse s'exécuter in fine dans certains navigateurs
  • 10. Babel/ts/traceur ● Compile en js ● Utilisé par toutes les librairies majeures
  • 11. TypeScript ● Superset: tout code js est valide en TypeScript ● Compile en js ● Développé par Microsoft ● Adopté par angular 2
  • 12. TLDR; ● JS est devenu Agile: une version par an ● Le langage s’est brusquement modernisé et a évolué en profondeur ● Dans le futur, il va évoluer beaucoup plus régulièrement ● Il existe des solutions simples à mettre en oeuvre pour la compatibilité avec les anciens navigateurs ● Il faut commencer à l’utiliser dès que possible :)
  • 13. Merci