31
Javascript nos dias de hoje Caio Ribeiro Pereira

Javascript nos dias de hoje

Embed Size (px)

DESCRIPTION

Apresentar projetos de sucesso, feitos em Javascript nas plataformas: Mobile, Web e Desktop, com o objetivo de mostrar que JS não é apenas uma linguagem client-side.

Citation preview

Page 1: Javascript nos dias de hoje

Javascriptnos dias de hoje

Caio Ribeiro Pereira

Page 2: Javascript nos dias de hoje

Caio Ribeiro PereiraDesenvolvedor web (JS/Node.js) na Neoassist

Bacharel em Sistemas de Informação na Unisantos

Entusiasta Javascript / Node.js

Page 4: Javascript nos dias de hoje
Page 5: Javascript nos dias de hoje

HTML, CSS e Javascriptestão em todas as

plataformas

Page 6: Javascript nos dias de hoje

Eles formam a família da web

HTML: Pai engenheiroCSS: Mãe decoradoraJavascript: Filho nerd

Page 7: Javascript nos dias de hoje

Sobre o Javascript

• Criado por Brendan Eich• Nasceu em 1995 • Linguagem script para o

Netscape• Mocha -> LiveScript -> Javascript• Douglas Crockford popularizou

JSON em 2002

Page 8: Javascript nos dias de hoje

Características do Javascript

• Orientado à eventos• Baseado em objetos (Prototype)• Assíncronismo via callbacks• Síntaxe parecida: Java, C# e C++• Padronizada pela ECMA• Versão atual: ECMAScript 5.1

Page 9: Javascript nos dias de hoje

Linguagens que compilam JS

Page 10: Javascript nos dias de hoje

• Síntaxe inspirada pelo Ruby e Python• Recusos:–Syntax Sugar–Classe e herança–Conditional Assignment:

• if true then “ok” else “no”

–Loop comprehension:• size = (num for num in [10..1])

• http://coffeescript.org

Page 11: Javascript nos dias de hoje
Page 12: Javascript nos dias de hoje

• Síntaxe inspirada pelo Java e .NET• Recursos:–Classe, Herança e Interface–Strong Typing–Generics, Enums e Iterators–Packages

• http://www.haxejs.org

Page 13: Javascript nos dias de hoje
Page 14: Javascript nos dias de hoje

• Síntaxe inspirada pelo Java e .NET• Recursos:–Classe, Herança e Interface–Strong typing–Overriding–Modules

• http://www.typescriptlang.org

Page 15: Javascript nos dias de hoje
Page 16: Javascript nos dias de hoje

Javascript server-side

Page 17: Javascript nos dias de hoje

• Orientado à eventos de I/O• Thread não-bloqueante• Utiliza o JS Chrome V8 Engine• http://nodejs.org

Page 18: Javascript nos dias de hoje

• Criado pela Mozilla Foundation• Javascript Java Runtime• Utiliza recursos da JVM• https://developer.mozilla.org/en-US/d

ocs/Rhino

Page 19: Javascript nos dias de hoje

• Inspirado no Rhino• Utiliza recursos da JVM• Utiliza CommonJS Runtime• http://ringojs.org

Page 20: Javascript nos dias de hoje

Banco de dados que usam JS

Page 21: Javascript nos dias de hoje

• Banco de dados NoSQL• Orientado a documentos (JSON)• Dynamic Schema• GridFS • MapReduce• http://www.mongodb.org

Page 22: Javascript nos dias de hoje

• Banco de dados NoSQL• Orientado a documentos (JSON)• Dynamic Schema• Acesso via HTTP (API)• MapReduce• http://couchdb.apache.org

Page 23: Javascript nos dias de hoje

Javascript para mobile

Page 24: Javascript nos dias de hoje

• HTML5, CSS3 e Javascript• Publica em até 7 plataformas:–iOS, Android, Windows Phone–BlackBerry, Palm, Bada–WebOS e Symbian

• http://phonegap.com

Page 25: Javascript nos dias de hoje

• HTML5, CSS3 e Javascript• Titanium Studio IDE• Publica em 3 plataformas:–iOS, Android e HTML5

• http://appcelerator.com/platform/titanium-sdk

Page 26: Javascript nos dias de hoje

Javascript para desktop

Page 27: Javascript nos dias de hoje

• HTML5, CSS3 e Javascript• Multi-plataforma: Linux, Windows,

Mac• Utiliza Chromium Engine• Utiliza Node.js no backend• http://appjs.org

Page 28: Javascript nos dias de hoje

• HTML5, CSS3 e Javascript• Python, Ruby e PHP• Multi-plataforma: Linux,

Windows e Mac• Utiliza WebKit Engine• http://www.tidesdk.org

Page 29: Javascript nos dias de hoje

Linux em JavascriptFabrice Bellard criou um emulador linux em JS.

http://bellard.org/jslinux

Page 30: Javascript nos dias de hoje

Perguntas?

Page 31: Javascript nos dias de hoje

Obrigado!