SlideShare a Scribd company logo
1 of 31
Javascript
nos dias de hoje
   Caio Ribeiro Pereira
Caio Ribeiro Pereira
Desenvolvedor web (JS/Node.js) na Neoassist
    Bacharel em Sistemas de Informação na
                                   Unisantos
              Entusiasta Javascript / Node.js
Contato
 caio.ribeiro.pereira@gmail.com
        @crp_underground
 github.com/caio-ribeiro-pereira
               Blogs
       www.udgwebdev.com
         www.udglinux.com
www.crpunderground.wordpress.com
HTML, CSS e
   Javascript
estão em todas
as plataformas
Eles formam a família
        da web
HTML: Pai engenheiro
CSS: Mãe decoradora
Javascript: Filho nerd
Sobre o Javascript
• Criado por Brendan Eich
• Nasceu em 1995
• Linguagem script para o
  Netscape
• Mocha -> LiveScript ->
  Javascript
• Douglas Crockford popularizou
  JSON em 2002
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
Linguagens que compilam JS
• 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
• Síntaxe inspirada pelo Java e .NET
• Recursos:
  – Classe, Herança e Interface
  – Strong Typing
  – Generics, Enums e Iterators
  – Packages
• http://www.haxejs.org
• Síntaxe inspirada pelo Java e .NET
• Recursos:
  – Classe, Herança e Interface
  – Strong typing
  – Overriding
  – Modules
• http://www.typescriptlang.org
Javascript server-side
•   Orientado à eventos de I/O
•   Thread não-bloqueante
•   Utiliza o JS Chrome V8 Engine
•   http://nodejs.org
•   Criado pela Mozilla Foundation
•   Javascript Java Runtime
•   Utiliza recursos da JVM
•   https://developer.mozilla.org/en-US/doc
•   Inspirado no Rhino
•   Utiliza recursos da JVM
•   Utiliza CommonJS Runtime
•   http://ringojs.org
Banco de dados que usam JS
•   Banco de dados NoSQL
•   Orientado a documentos (JSON)
•   Dynamic Schema
•   GridFS
•   MapReduce
•   http://www.mongodb.org
•   Banco de dados NoSQL
•   Orientado a documentos (JSON)
•   Dynamic Schema
•   Acesso via HTTP (API)
•   MapReduce
•   http://couchdb.apache.org
Javascript para mobile
• HTML5, CSS3 e Javascript
• Publica em até 7 plataformas:
  – iOS, Android, Windows Phone
  – BlackBerry, Palm, Bada
  – WebOS e Symbian
• http://phonegap.com
• HTML5, CSS3 e Javascript
• Titanium Studio IDE
• Publica em 3 plataformas:
  –iOS, Android e HTML5
• http://appcelerator.com/platfo
Javascript para desktop
• HTML5, CSS3 e Javascript
• Multi-plataforma: Linux,
  Windows, Mac
• Utiliza Chromium Engine
• Utiliza Node.js no backend
• http://appjs.org
• HTML5, CSS3 e Javascript
• Python, Ruby e PHP
• Multi-plataforma: Linux,
  Windows e Mac
• Utiliza WebKit Engine
• http://www.tidesdk.org
Linux em Javascript
Fabrice Bellard criou um emulador linux em JS.




          http://bellard.org/jslinux
Perguntas?
Obrigado!

More Related Content

What's hot

Introdução ao Node.js - FATEC SP
Introdução ao Node.js - FATEC SPIntrodução ao Node.js - FATEC SP
Introdução ao Node.js - FATEC SPArthur Fücher
 
Node.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançadoNode.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançadoEduardo Bohrer
 
Introdução à Node.js + MongoDB
Introdução à Node.js + MongoDBIntrodução à Node.js + MongoDB
Introdução à Node.js + MongoDBLuiz Duarte
 
NodeJS - Tutorial de forma simples e pratica.
NodeJS - Tutorial de forma simples e pratica.NodeJS - Tutorial de forma simples e pratica.
NodeJS - Tutorial de forma simples e pratica.Filipe Morelli
 
Node.js, Uma breve introdução
Node.js, Uma breve introduçãoNode.js, Uma breve introdução
Node.js, Uma breve introduçãoPablo Feijó
 
Introdução ao NodeJS
Introdução ao NodeJSIntrodução ao NodeJS
Introdução ao NodeJSGiovanni Bassi
 
Light Talk: Introdução sobre Node.js
Light Talk: Introdução sobre Node.jsLight Talk: Introdução sobre Node.js
Light Talk: Introdução sobre Node.jsCaio Ribeiro Pereira
 
Node.js - #1 - Introdução - Rodrigo Branas
Node.js - #1 - Introdução - Rodrigo BranasNode.js - #1 - Introdução - Rodrigo Branas
Node.js - #1 - Introdução - Rodrigo BranasRodrigo Branas
 
Conhecendo o Nodejs
Conhecendo o NodejsConhecendo o Nodejs
Conhecendo o NodejsCaio Cutrim
 
ASP.Net Core FAQ
ASP.Net Core FAQASP.Net Core FAQ
ASP.Net Core FAQLuiz Duarte
 

What's hot (20)

Introdução ao Node.js - FATEC SP
Introdução ao Node.js - FATEC SPIntrodução ao Node.js - FATEC SP
Introdução ao Node.js - FATEC SP
 
Node.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançadoNode.JS - Workshop do básico ao avançado
Node.JS - Workshop do básico ao avançado
 
Por que Node JS?
Por que Node JS?Por que Node JS?
Por que Node JS?
 
Boas práticas de API Design
Boas práticas de API DesignBoas práticas de API Design
Boas práticas de API Design
 
Introdução à Node.js + MongoDB
Introdução à Node.js + MongoDBIntrodução à Node.js + MongoDB
Introdução à Node.js + MongoDB
 
NodeJS - Tutorial de forma simples e pratica.
NodeJS - Tutorial de forma simples e pratica.NodeJS - Tutorial de forma simples e pratica.
NodeJS - Tutorial de forma simples e pratica.
 
Node js - Javascript Server Side
Node js - Javascript Server SideNode js - Javascript Server Side
Node js - Javascript Server Side
 
Node.js, Uma breve introdução
Node.js, Uma breve introduçãoNode.js, Uma breve introdução
Node.js, Uma breve introdução
 
Introdução ao NodeJS
Introdução ao NodeJSIntrodução ao NodeJS
Introdução ao NodeJS
 
Light Talk: Introdução sobre Node.js
Light Talk: Introdução sobre Node.jsLight Talk: Introdução sobre Node.js
Light Talk: Introdução sobre Node.js
 
Node.js - #1 - Introdução - Rodrigo Branas
Node.js - #1 - Introdução - Rodrigo BranasNode.js - #1 - Introdução - Rodrigo Branas
Node.js - #1 - Introdução - Rodrigo Branas
 
Node.js for Noobs
Node.js for NoobsNode.js for Noobs
Node.js for Noobs
 
Node.js no Pagar.me
Node.js no Pagar.meNode.js no Pagar.me
Node.js no Pagar.me
 
Conhecendo o Nodejs
Conhecendo o NodejsConhecendo o Nodejs
Conhecendo o Nodejs
 
Orb - Chat by location
Orb - Chat by locationOrb - Chat by location
Orb - Chat by location
 
Performance Web com ASP.NET MVC
Performance Web com ASP.NET MVCPerformance Web com ASP.NET MVC
Performance Web com ASP.NET MVC
 
PHP + Node.js
PHP + Node.jsPHP + Node.js
PHP + Node.js
 
ASP.Net Core FAQ
ASP.Net Core FAQASP.Net Core FAQ
ASP.Net Core FAQ
 
Apresentação
ApresentaçãoApresentação
Apresentação
 
Node.js
Node.jsNode.js
Node.js
 

Viewers also liked

Descritores do 4º bimestre
Descritores do 4º bimestreDescritores do 4º bimestre
Descritores do 4º bimestreGoogle
 
2º Edição Ebook:Smart Digital - Conteúdo Social
2º Edição Ebook:Smart Digital - Conteúdo Social2º Edição Ebook:Smart Digital - Conteúdo Social
2º Edição Ebook:Smart Digital - Conteúdo SocialBruno de Souza
 
[Manual] Como tornar didáticos e dinâmicos seus relatórios de monitoramento e...
[Manual] Como tornar didáticos e dinâmicos seus relatórios de monitoramento e...[Manual] Como tornar didáticos e dinâmicos seus relatórios de monitoramento e...
[Manual] Como tornar didáticos e dinâmicos seus relatórios de monitoramento e...Júnior Siri
 
Curso HTML, CSS e JavaScript
Curso HTML, CSS e JavaScriptCurso HTML, CSS e JavaScript
Curso HTML, CSS e JavaScriptPablo Sanches
 
O Que Vamos Ensinar Ao 1ºAno
O Que Vamos Ensinar Ao 1ºAnoO Que Vamos Ensinar Ao 1ºAno
O Que Vamos Ensinar Ao 1ºAnoaprendercomamor
 
COMO FAZER E-MAIL MARKETING EM HTML
COMO FAZER E-MAIL MARKETING EM HTMLCOMO FAZER E-MAIL MARKETING EM HTML
COMO FAZER E-MAIL MARKETING EM HTMLRenato Melo
 
Caderno de Leitura
Caderno de LeituraCaderno de Leitura
Caderno de LeituraCarol Guedes
 
Livro Linguagem C - Completo
Livro Linguagem C - CompletoLivro Linguagem C - Completo
Livro Linguagem C - CompletoMarcos Quinho
 
Fundamentos da programação de computadores 2ª edição
Fundamentos da programação de computadores   2ª ediçãoFundamentos da programação de computadores   2ª edição
Fundamentos da programação de computadores 2ª ediçãoLeandro Rocha de Oliveira
 
Apresentação do Curso Primeiros Passos na Web com HTML e CSS - Profite e Univ...
Apresentação do Curso Primeiros Passos na Web com HTML e CSS - Profite e Univ...Apresentação do Curso Primeiros Passos na Web com HTML e CSS - Profite e Univ...
Apresentação do Curso Primeiros Passos na Web com HTML e CSS - Profite e Univ...Uni Buscapé Company
 

Viewers also liked (17)

Redes linux excerto
Redes linux excertoRedes linux excerto
Redes linux excerto
 
JavaScript Hacks
JavaScript HacksJavaScript Hacks
JavaScript Hacks
 
426 curso html
426 curso html426 curso html
426 curso html
 
Descritores do 4º bimestre
Descritores do 4º bimestreDescritores do 4º bimestre
Descritores do 4º bimestre
 
2º Edição Ebook:Smart Digital - Conteúdo Social
2º Edição Ebook:Smart Digital - Conteúdo Social2º Edição Ebook:Smart Digital - Conteúdo Social
2º Edição Ebook:Smart Digital - Conteúdo Social
 
[Manual] Como tornar didáticos e dinâmicos seus relatórios de monitoramento e...
[Manual] Como tornar didáticos e dinâmicos seus relatórios de monitoramento e...[Manual] Como tornar didáticos e dinâmicos seus relatórios de monitoramento e...
[Manual] Como tornar didáticos e dinâmicos seus relatórios de monitoramento e...
 
Of. Introdutoria
Of. IntrodutoriaOf. Introdutoria
Of. Introdutoria
 
Curso HTML, CSS e JavaScript
Curso HTML, CSS e JavaScriptCurso HTML, CSS e JavaScript
Curso HTML, CSS e JavaScript
 
O Que Vamos Ensinar Ao 1ºAno
O Que Vamos Ensinar Ao 1ºAnoO Que Vamos Ensinar Ao 1ºAno
O Que Vamos Ensinar Ao 1ºAno
 
Html Básico
Html BásicoHtml Básico
Html Básico
 
COMO FAZER E-MAIL MARKETING EM HTML
COMO FAZER E-MAIL MARKETING EM HTMLCOMO FAZER E-MAIL MARKETING EM HTML
COMO FAZER E-MAIL MARKETING EM HTML
 
Introdução ao JavaScript
Introdução ao JavaScriptIntrodução ao JavaScript
Introdução ao JavaScript
 
Caderno de Leitura
Caderno de LeituraCaderno de Leitura
Caderno de Leitura
 
Matematica
MatematicaMatematica
Matematica
 
Livro Linguagem C - Completo
Livro Linguagem C - CompletoLivro Linguagem C - Completo
Livro Linguagem C - Completo
 
Fundamentos da programação de computadores 2ª edição
Fundamentos da programação de computadores   2ª ediçãoFundamentos da programação de computadores   2ª edição
Fundamentos da programação de computadores 2ª edição
 
Apresentação do Curso Primeiros Passos na Web com HTML e CSS - Profite e Univ...
Apresentação do Curso Primeiros Passos na Web com HTML e CSS - Profite e Univ...Apresentação do Curso Primeiros Passos na Web com HTML e CSS - Profite e Univ...
Apresentação do Curso Primeiros Passos na Web com HTML e CSS - Profite e Univ...
 

Similar to Javascript em todas as plataformas

Construindo aplicações Desktop com HTML, CSS e JS - Rio.JS Conference 2013
Construindo aplicações Desktop com HTML, CSS e JS - Rio.JS Conference 2013Construindo aplicações Desktop com HTML, CSS e JS - Rio.JS Conference 2013
Construindo aplicações Desktop com HTML, CSS e JS - Rio.JS Conference 2013javamanrj
 
Desenvolvendo Sistema Cloud e Web Full-stack Developer
Desenvolvendo Sistema Cloud e Web Full-stack DeveloperDesenvolvendo Sistema Cloud e Web Full-stack Developer
Desenvolvendo Sistema Cloud e Web Full-stack DeveloperCesar Romero
 
Desenvolvimento de aplicações PHP com MongoDB
Desenvolvimento de aplicações PHP com MongoDBDesenvolvimento de aplicações PHP com MongoDB
Desenvolvimento de aplicações PHP com MongoDBAri Stopassola Junior
 
O bom, o mau, o vilão... e o node.js
O bom, o mau, o vilão... e o node.jsO bom, o mau, o vilão... e o node.js
O bom, o mau, o vilão... e o node.jsNuno Paz
 
Aula 2. frameworks js
Aula 2. frameworks jsAula 2. frameworks js
Aula 2. frameworks jsandreluizlc
 
Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.Valmir Justo
 
desenvolvimento-web-javascript
desenvolvimento-web-javascriptdesenvolvimento-web-javascript
desenvolvimento-web-javascriptFelipe Barros
 
GDG ABC Meetup #5 - Tendências 2015
GDG ABC Meetup #5 - Tendências 2015GDG ABC Meetup #5 - Tendências 2015
GDG ABC Meetup #5 - Tendências 2015Daniel Costa Gimenes
 
Python mudando o modo de desenvolver para a internet
Python mudando o modo de desenvolver para a internetPython mudando o modo de desenvolver para a internet
Python mudando o modo de desenvolver para a internetMarcos Petry
 
Python mudando o modo de desenvolver para a web - Marcos Daniel Petry
Python mudando o modo de desenvolver para a web  - Marcos Daniel PetryPython mudando o modo de desenvolver para a web  - Marcos Daniel Petry
Python mudando o modo de desenvolver para a web - Marcos Daniel PetryTchelinux
 
Javascript levado a serio
Javascript levado a serioJavascript levado a serio
Javascript levado a serioJaydson Gomes
 
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...Luis Cipriani
 
Criando aplicações web com tecnologias Microsoft
Criando aplicações web com tecnologias MicrosoftCriando aplicações web com tecnologias Microsoft
Criando aplicações web com tecnologias MicrosoftFabrício Lopes Sanchez
 
TDC2011: Java EE 6 & Azure
TDC2011: Java EE 6 & AzureTDC2011: Java EE 6 & Azure
TDC2011: Java EE 6 & AzureDr. Spock
 
DevOps: desenvolvedores e sysadmins cooperando na prática
DevOps: desenvolvedores e sysadmins cooperando na práticaDevOps: desenvolvedores e sysadmins cooperando na prática
DevOps: desenvolvedores e sysadmins cooperando na práticaAri Stopassola Junior
 
Write once, run "everywhere"
Write once, run "everywhere"Write once, run "everywhere"
Write once, run "everywhere"Stefan Horochovec
 

Similar to Javascript em todas as plataformas (20)

Construindo aplicações Desktop com HTML, CSS e JS - Rio.JS Conference 2013
Construindo aplicações Desktop com HTML, CSS e JS - Rio.JS Conference 2013Construindo aplicações Desktop com HTML, CSS e JS - Rio.JS Conference 2013
Construindo aplicações Desktop com HTML, CSS e JS - Rio.JS Conference 2013
 
Html5
Html5Html5
Html5
 
Desenvolvendo Sistema Cloud e Web Full-stack Developer
Desenvolvendo Sistema Cloud e Web Full-stack DeveloperDesenvolvendo Sistema Cloud e Web Full-stack Developer
Desenvolvendo Sistema Cloud e Web Full-stack Developer
 
Desenvolvimento de aplicações PHP com MongoDB
Desenvolvimento de aplicações PHP com MongoDBDesenvolvimento de aplicações PHP com MongoDB
Desenvolvimento de aplicações PHP com MongoDB
 
Javascript Cross-browser
Javascript Cross-browserJavascript Cross-browser
Javascript Cross-browser
 
O bom, o mau, o vilão... e o node.js
O bom, o mau, o vilão... e o node.jsO bom, o mau, o vilão... e o node.js
O bom, o mau, o vilão... e o node.js
 
Aula 2. frameworks js
Aula 2. frameworks jsAula 2. frameworks js
Aula 2. frameworks js
 
Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.Desenvolvimento web - conceitos, tecnologia e tendências.
Desenvolvimento web - conceitos, tecnologia e tendências.
 
desenvolvimento-web-javascript
desenvolvimento-web-javascriptdesenvolvimento-web-javascript
desenvolvimento-web-javascript
 
GDG ABC Meetup #5 - Tendências 2015
GDG ABC Meetup #5 - Tendências 2015GDG ABC Meetup #5 - Tendências 2015
GDG ABC Meetup #5 - Tendências 2015
 
Python mudando o modo de desenvolver para a internet
Python mudando o modo de desenvolver para a internetPython mudando o modo de desenvolver para a internet
Python mudando o modo de desenvolver para a internet
 
Python mudando o modo de desenvolver para a web - Marcos Daniel Petry
Python mudando o modo de desenvolver para a web  - Marcos Daniel PetryPython mudando o modo de desenvolver para a web  - Marcos Daniel Petry
Python mudando o modo de desenvolver para a web - Marcos Daniel Petry
 
Javascript levado a serio
Javascript levado a serioJavascript levado a serio
Javascript levado a serio
 
Ruby on Rails for beginners 2.0
Ruby on Rails for beginners 2.0Ruby on Rails for beginners 2.0
Ruby on Rails for beginners 2.0
 
Nosql4java
Nosql4javaNosql4java
Nosql4java
 
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...
Alexandria: um Sistema de Sistemas para Publicação de Conteúdo Digital utiliz...
 
Criando aplicações web com tecnologias Microsoft
Criando aplicações web com tecnologias MicrosoftCriando aplicações web com tecnologias Microsoft
Criando aplicações web com tecnologias Microsoft
 
TDC2011: Java EE 6 & Azure
TDC2011: Java EE 6 & AzureTDC2011: Java EE 6 & Azure
TDC2011: Java EE 6 & Azure
 
DevOps: desenvolvedores e sysadmins cooperando na prática
DevOps: desenvolvedores e sysadmins cooperando na práticaDevOps: desenvolvedores e sysadmins cooperando na prática
DevOps: desenvolvedores e sysadmins cooperando na prática
 
Write once, run "everywhere"
Write once, run "everywhere"Write once, run "everywhere"
Write once, run "everywhere"
 

Javascript em todas as plataformas

  • 1. Javascript nos dias de hoje Caio Ribeiro Pereira
  • 2. Caio Ribeiro Pereira Desenvolvedor web (JS/Node.js) na Neoassist Bacharel em Sistemas de Informação na Unisantos Entusiasta Javascript / Node.js
  • 3. Contato caio.ribeiro.pereira@gmail.com @crp_underground github.com/caio-ribeiro-pereira Blogs www.udgwebdev.com www.udglinux.com www.crpunderground.wordpress.com
  • 4.
  • 5. HTML, CSS e Javascript estão em todas as plataformas
  • 6. Eles formam a família da web HTML: Pai engenheiro CSS: Mãe decoradora Javascript: Filho nerd
  • 7. Sobre o Javascript • Criado por Brendan Eich • Nasceu em 1995 • Linguagem script para o Netscape • Mocha -> LiveScript -> Javascript • Douglas Crockford popularizou JSON em 2002
  • 8. 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
  • 10. • 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
  • 11.
  • 12. • Síntaxe inspirada pelo Java e .NET • Recursos: – Classe, Herança e Interface – Strong Typing – Generics, Enums e Iterators – Packages • http://www.haxejs.org
  • 13.
  • 14. • Síntaxe inspirada pelo Java e .NET • Recursos: – Classe, Herança e Interface – Strong typing – Overriding – Modules • http://www.typescriptlang.org
  • 15.
  • 17. Orientado à eventos de I/O • Thread não-bloqueante • Utiliza o JS Chrome V8 Engine • http://nodejs.org
  • 18. Criado pela Mozilla Foundation • Javascript Java Runtime • Utiliza recursos da JVM • https://developer.mozilla.org/en-US/doc
  • 19. Inspirado no Rhino • Utiliza recursos da JVM • Utiliza CommonJS Runtime • http://ringojs.org
  • 20. Banco de dados que usam JS
  • 21. Banco de dados NoSQL • Orientado a documentos (JSON) • Dynamic Schema • GridFS • MapReduce • http://www.mongodb.org
  • 22. Banco de dados NoSQL • Orientado a documentos (JSON) • Dynamic Schema • Acesso via HTTP (API) • MapReduce • http://couchdb.apache.org
  • 24. • HTML5, CSS3 e Javascript • Publica em até 7 plataformas: – iOS, Android, Windows Phone – BlackBerry, Palm, Bada – WebOS e Symbian • http://phonegap.com
  • 25. • HTML5, CSS3 e Javascript • Titanium Studio IDE • Publica em 3 plataformas: –iOS, Android e HTML5 • http://appcelerator.com/platfo
  • 27. • HTML5, CSS3 e Javascript • Multi-plataforma: Linux, Windows, Mac • Utiliza Chromium Engine • Utiliza Node.js no backend • http://appjs.org
  • 28. • HTML5, CSS3 e Javascript • Python, Ruby e PHP • Multi-plataforma: Linux, Windows e Mac • Utiliza WebKit Engine • http://www.tidesdk.org
  • 29. Linux em Javascript Fabrice Bellard criou um emulador linux em JS. http://bellard.org/jslinux