TypeScript for dummies

Preview:

DESCRIPTION

Les applications web recourent de plus en plus au javascript, et on commence maintenant à recourir au javascript pour les parties serveur avec des outils comme Node.js TypeScript est un nouveau language permettant d'annoter et de structurer son code javascript, afin d'en faciliter la fiabilité et la maintenance. Dans cette session, nous vous présenterons les bases de TypeScript et comment tirer le meilleur parti de ce nouvel outil dans vos applications.

Citation preview

Donnez votre avis !Depuis votre smartphone, sur : http://notes.mstechdays.fr

De nombreux lots à gagner toutes les heures !!!

Claviers, souris et jeux Microsoft…

Merci de nous aider à améliorer les TechDays

http://notes.mstechdays.fr

TypeScript pour les nuls

Guillaume LeborgneArchitecte logiciel

François GuillotDéveloppeur web

Code / Développement

#typescriptwww.typescriptlang.org

180 collaborateurs Depuis 2007 à Paris - Lyon - Genève

Stand 97 – Zone bleu foncé

BusinessIntelligence Talk

Biz

NETDot Share

Point

Microsoft

100 %

JAVASCRIPT? COMME JAVA?Il y a à peine 10 ans…

TypeScript pour les nuls

TypeScript pour les nuls

JavaScript il y a 10 ans// Manipuler dynamiquement les CSSvar myDiv = document.getElementById("main");myDiv.style.display = "block";myDiv.style.backgroundColor = "#FF0000";

// Créer une requête Ajaxvar XMLHttpFactories = [ function () {return new XMLHttpRequest()}, function () {return new ActiveXObject("Msxml2.XMLHTTP")}, function () {return new ActiveXObject("Msxml3.XMLHTTP")}, function () {return new ActiveXObject("Microsoft.XMLHTTP")}];

function createXMLHTTPObject() { var xmlhttp = false; for (var i=0;i<XMLHttpFactories.length;i++) { try { xmlhttp = XMLHttpFactories[i](); } catch (e) { continue; } break; } return xmlhttp;}

TypeScript pour les nuls

JavaScript il y a 10 ans

TypeScript pour les nuls

JavaScript il y a 5 ans// Les librairies nous facilitent le travail$.ajax({ "url": "http://www.example.org", "type": "GET", "success": displayData});

function displayData(data) { $("#myDiv") .html(data) .fadeIn() .addClass("newData");}

TypeScript pour les nuls

• Incontournable pour le développeur web

• Écosystème riche et communauté importante

• Single page applications

JavaScript aujourd’hui

TypeScript pour les nuls

La course aux performances

L’ÉTAT DU LANGAGEOù en est JavaScript?

TypeScript pour les nuls

TypeScript pour les nuls

• Typage dynamique• Langage prototypé• Encapsulation fastidieuse

Ce qu’on lui reproche

TypeScript pour les nuls

Ce qu’on lui reproche

Peu adapté aux développements dépassant une simple page web

TypeScript pour les nuls

• ECMAScript 5 sur la dernière génération de navigateurs– http://kangax.github.com/es5-compat-table/

• ECMAScript 6 prometteur mais en chantier (pas avant 2014…)– http://kangax.github.com/es5-compat-table/es6/

Une norme à dépoussiérer

TYPESCRIPT

TypeScript pour les nuls

TypeScript pour les nuls

TypeScript est un surensemble de JavaScript destiné à améliorer la qualité et la maintenabilité des bases de code JavaScript.

Qu’est ce que TypeScript ?

TypeScript pour les nuls

• 100% compatible avec JavaScript• Open source (licence Apache 2.0)• Compilateur TypeScript écrit en TypeScript• Compatible ECMAScript 3/5 (flag)

Intégration à l’écosystème

TypeScript pour les nuls

• Typage statique• Orienté objet• Arrow functions (lambdas)• Fichiers de définitions

La syntaxe

TypeScript pour les nuls

• Permettre aux IDE des fonctionnalités avancées– Intellisense– Refactoring– Audit de code

• Limiter les erreurs les plus communes• Améliorer la qualité du code

Intérêts

TypeScript pour les nuls

TypeScript = JavaScript avec des supers pouvoirs

demoTYPESCRIPT EN ACTIONhttp://www.typescriptlang.org/Playground/

TypeScript pour les nuls

TypeScript pour les nuls

• Plusieurs plugins disponibles :– Visual Studio 2012 (IntelliSense)– Vi– EMAC– Sublime Text

• Web essentials pour Visual Studio :– Compilation automatique– Options de compilation

Intégration aux IDE

demoAPPLICATION WINDOWS STORE

Retour d’expérience

TypeScript pour les nuls

LE FUTUR DE TYPESCRIPTEt demain?

TypeScript pour les nuls

TypeScript pour les nuls

• Version actuelle : 0.8.2 (21 janvier 2013)• 0.8.3 :

– Généricité– Améliorations du système de typage visant à permettre la modélisation

des librairies JavaScript

• 0.9.x :– Alignement des fonctionnalités avec ECMAScript 6– Site communautaire pour partager les fichiers de syntaxe– Amélioration du plugin Visual Studio

• 1.x :– Async/Await, Mixins, Protected access– Génération de code compatible ECMAScript 6

ROADMAP

TypeScript pour les nuls

• • Script#

• JSLint et Google Closure

Les challengers

TypeScript pour les nuls

• Plugins pour les IDE (Eclipse, Notepad++…)• Fichiers de syntaxe (.d.ts)

– https://github.com/borisyankov/DefinitelyTyped

• Suggestions sur CodePlex

Vous pouvez participer

Donnez votre avis !Depuis votre smartphone, sur : http://notes.mstechdays.fr

De nombreux lots à gagner toutes les heures !!!

Claviers, souris et jeux Microsoft…

Merci de nous aider à améliorer les TechDays

http://notes.mstechdays.fr

Formez-vous en ligne

Retrouvez nos évènements

Faites-vous accompagner gratuitement

Essayer gratuitement nos solutions IT

Retrouver nos experts Microsoft

Pros de l’ITDéveloppeurs

www.microsoftvirtualacademy.com

http://aka.ms/generation-app

http://aka.ms/evenements-developpeurs

http://aka.ms/itcamps-france

Les accélérateursWindows Azure, Windows Phone,

Windows 8

http://aka.ms/telechargements

La Dev’Team sur MSDNhttp://aka.ms/devteam

L’IT Team sur TechNethttp://aka.ms/itteam