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)
● Augme...
Chronologie
● 1995: Netscape crée mocha -> livescript -> javascript
● 1997: Standardisation EcmaScript -> ES1
● 1998: ES2
...
ES2015
● Release majeure: la plus grande mise à jour jamais effectuée
● ~70 nouvelles features
● S’adapter aux grosses app...
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’abse...
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 angula...
TLDR;
● JS est devenu Agile: une version par an
● Le langage s’est brusquement modernisé et a évolué en profondeur
● Dans ...
Merci
Js, quoi de neuf ? - strasbourg js - septembre 2016
Prochain SlideShare
Chargement dans…5
×

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

45 vues

Publié le

Une présentation sur l'évolution de javascript avec un focus sur ES2015/ES2016, les transpilers et Typescript.

Publié dans : Ingénierie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
45
Sur SlideShare
0
Issues des intégrations
0
Intégrations
1
Actions
Partages
0
Téléchargements
1
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

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

  1. 1. JS, Quoi de neuf ? ES2015, ES2016, Babel, Typescript, etc
  2. 2. En 2015, JS est devenu agile !
  3. 3. Sommaire 1. Historique 2. ES2015/ES2016 3. Compatibilité
  4. 4. ● 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
  5. 5. 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)
  6. 6. 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
  7. 7. ES2016 ● Release mineure ● A prouvé que le nouveau modèle fonctionne
  8. 8. 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
  9. 9. Babel/ts/traceur ● Compile en js ● Utilisé par toutes les librairies majeures
  10. 10. TypeScript ● Superset: tout code js est valide en TypeScript ● Compile en js ● Développé par Microsoft ● Adopté par angular 2
  11. 11. 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 :)
  12. 12. Merci

×