3. JavaScript in modern world
Rich client application
More implementations design patterns (MVC, MVVM, MVP)
Server-side applications and two ways of progress by server javascript nodejs,
io.js
Isomorphic code base (meteorjs, react, catberrcatberry yjs)
Active community
Mobile applications (PhoneGap, Cardova, Marmalade)
Modern browser game dev
6. Nodejs v 4.x
common code base nodejs and io.js
Child process
full support ES6
More stable
More fast
Nodejs Foundation
7. It’s just JavaScript
no more `var`
everything is an expression
destructing assignment, array slicing
aliases (is, or, isnt, yes, unless, @, **, ...)
bound functions (arrow), splats…, default parameters
generators
classes, inheritance, ::, super(), static methods
string interpolation #{}, multiline strings
http://coffeescript.org/
8. But not so fabulous
scoping is madness (http://goo.gl/KVNHLQ)
in some cases you still need put brackets
you can still shoot yourself in the foot
difficult to debug
there is no way back
good for ruby / python - ist’s
javascript is changing!
9.
10. ECMAScript 6: extending CoffeeScript
block scope
let, const - immutability
modules and import
named parameters
getters and setters
method properties, computed property names
typed arrays (Uint32Array, Uint8Array, Float32Array)
for-of
http://es6-features.org/
11. ECMAScript 6: What about types?
Symbol
Iterator
Set, Map
Promise
String (startsWith, endsWith, includes, repeat)
and others good features (http://goo.gl/1Rossi)
http://es6-features.org/