SlideShare uma empresa Scribd logo
1 de 25
Você realmente sabe
    JavaScript?
20º encontro do GURU-SP




26/11/2011
Eu
Plínio Balduino - desenvolvedor e curioso
@p_balduino
Motivação
Um pouco de história




Criado em 1995 por Brendan Eich
Submetido ao ECMA em 1996
Nos primórdios...




Quem nunca usou aqueles scripts prontos nas páginas do
Geocities?
Nos primórdios...




Eu já
/o
Definição
JavaScript é uma linguagem:
- Dinâmica
- Orientada a objetos
- Prototipada
- Funcional
- Muito mais legal do que parece
Definição
Dinâmica
Como o Ruby
Orientada a objetos
Prototipada
Ao invés de herança, aqui é usada prototipação
Funcional
Minha parte preferida


      JS is Lisp in C's Clothing
      Douglas Crockford
Funcional
Você pode, e deve, passar funções como parâmetros
Funcional
Também é permitido que uma função retorne outra função
Funcional
jQuery usa isso O TEMPO INTEIRO
O retorno dos parênteses
Tratamento de erros
Pode pular que é raso
JSON
JavaScript Object Notation
É a forma mais simples e rápida de criar ou transmitir objetos
JavaScript
Use JSON ao invés de XML quando usar AJAX e seja feliz
No Rails é gerado automagicamente usando o j t . o j o ou
                                          beot_sn
rne :sn= ojc
 edr jo > bet
JSON
JavaScript não é só web
Ele está em toda parte
Em sua próxima aplicação...
Por que não usar uma linguagem realmente poderosa e
produtiva?
Perguntas?
Referências
- http://javascript.crockford.com/javascript.html
- http://en.wikipedia.org/wiki/Javascript
- http://en.wikipedia.org/wiki/Scheme_(programming_language)
- http://stackoverflow.com/q/16509
- http://mitpress.mit.edu/sicp/
- http://dynjs.org/

Mais conteúdo relacionado

Destaque (20)

Docencia
DocenciaDocencia
Docencia
 
Superior Sales Flyer
Superior Sales Flyer Superior Sales Flyer
Superior Sales Flyer
 
Dshalfoffsale1109proof
Dshalfoffsale1109proofDshalfoffsale1109proof
Dshalfoffsale1109proof
 
Patricia Fernández Fra
Patricia Fernández FraPatricia Fernández Fra
Patricia Fernández Fra
 
Jessica Bowman Portfolio
Jessica Bowman PortfolioJessica Bowman Portfolio
Jessica Bowman Portfolio
 
Prova Luke Ana,Irene
Prova Luke Ana,IreneProva Luke Ana,Irene
Prova Luke Ana,Irene
 
Espacio8
Espacio8Espacio8
Espacio8
 
12
1212
12
 
pruebapowerpoint_1
pruebapowerpoint_1pruebapowerpoint_1
pruebapowerpoint_1
 
Brochure
BrochureBrochure
Brochure
 
DspòJgposk
DspòJgposkDspòJgposk
DspòJgposk
 
Testeer
TesteerTesteer
Testeer
 
Ken Brush Freesouls 100
Ken Brush Freesouls 100Ken Brush Freesouls 100
Ken Brush Freesouls 100
 
Alkylog
AlkylogAlkylog
Alkylog
 
popoo
popoopopoo
popoo
 
Vrienden 4
Vrienden 4Vrienden 4
Vrienden 4
 
Nilufa Collage
Nilufa CollageNilufa Collage
Nilufa Collage
 
stigma on strippers
stigma on strippersstigma on strippers
stigma on strippers
 
Good Drivers Just Drive
Good Drivers Just DriveGood Drivers Just Drive
Good Drivers Just Drive
 
popoo
popoopopoo
popoo
 

Semelhante a 20º GURU-SP - Você realmente sabe JavaScript?

Java script em 2016 - Como sobreviver a essa sopa de letrinhas com vue.js
Java script em 2016 - Como sobreviver a essa sopa de letrinhas com vue.jsJava script em 2016 - Como sobreviver a essa sopa de letrinhas com vue.js
Java script em 2016 - Como sobreviver a essa sopa de letrinhas com vue.jsVinicius Reis
 
Porque aprender várias linguagens me tornou um DBA (e desenvolvedor) melhor
Porque aprender várias linguagens me tornou um DBA (e desenvolvedor) melhorPorque aprender várias linguagens me tornou um DBA (e desenvolvedor) melhor
Porque aprender várias linguagens me tornou um DBA (e desenvolvedor) melhorDickson S. Guedes
 
(Re)pensando a OOP - TDC 2012
(Re)pensando a OOP - TDC 2012(Re)pensando a OOP - TDC 2012
(Re)pensando a OOP - TDC 2012Luís Cobucci
 
JavaScript: agora é sério
JavaScript: agora é sérioJavaScript: agora é sério
JavaScript: agora é sérioLuciano Ramalho
 
Javascript semana computação
Javascript semana computaçãoJavascript semana computação
Javascript semana computaçãoRamon Oliveira
 
Gerenciando Projetos Com Ruby On Rails
Gerenciando Projetos Com Ruby On RailsGerenciando Projetos Com Ruby On Rails
Gerenciando Projetos Com Ruby On RailsRodrigo Urubatan
 
O Prazer De Trabalhar Com Python
O Prazer De Trabalhar Com PythonO Prazer De Trabalhar Com Python
O Prazer De Trabalhar Com PythonMarinho Brandão
 
Javascript Orientado a Objeto
Javascript Orientado a ObjetoJavascript Orientado a Objeto
Javascript Orientado a ObjetoFábio Elísio
 
Conceitos Básicos de OO e Java
Conceitos Básicos de OO e JavaConceitos Básicos de OO e Java
Conceitos Básicos de OO e JavaCharles Jungbeck
 
C# 7
C# 7C# 7
C# 7CDS
 
Javascript - boas práticas
Javascript - boas práticasJavascript - boas práticas
Javascript - boas práticasFrancke Peixoto
 
Java: A Máquina Virtual e seu Mercado de Trabalho
Java: A Máquina Virtual e seu Mercado de TrabalhoJava: A Máquina Virtual e seu Mercado de Trabalho
Java: A Máquina Virtual e seu Mercado de TrabalhoAndrey Masiero
 
Django - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonDjango - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonIgor Sobreira
 
Tester, pegue suas coisas, você está demitido
Tester, pegue suas coisas, você está demitidoTester, pegue suas coisas, você está demitido
Tester, pegue suas coisas, você está demitidoLeonardo Galani
 

Semelhante a 20º GURU-SP - Você realmente sabe JavaScript? (20)

Java script em 2016 - Como sobreviver a essa sopa de letrinhas com vue.js
Java script em 2016 - Como sobreviver a essa sopa de letrinhas com vue.jsJava script em 2016 - Como sobreviver a essa sopa de letrinhas com vue.js
Java script em 2016 - Como sobreviver a essa sopa de letrinhas com vue.js
 
Porque aprender várias linguagens me tornou um DBA (e desenvolvedor) melhor
Porque aprender várias linguagens me tornou um DBA (e desenvolvedor) melhorPorque aprender várias linguagens me tornou um DBA (e desenvolvedor) melhor
Porque aprender várias linguagens me tornou um DBA (e desenvolvedor) melhor
 
JSF - JavaServer Faces
JSF - JavaServer FacesJSF - JavaServer Faces
JSF - JavaServer Faces
 
(Re)pensando a OOP - TDC 2012
(Re)pensando a OOP - TDC 2012(Re)pensando a OOP - TDC 2012
(Re)pensando a OOP - TDC 2012
 
JavaScript: agora é sério
JavaScript: agora é sérioJavaScript: agora é sério
JavaScript: agora é sério
 
Javascript
JavascriptJavascript
Javascript
 
Apresentação faef
Apresentação faefApresentação faef
Apresentação faef
 
Javascript semana computação
Javascript semana computaçãoJavascript semana computação
Javascript semana computação
 
Refatorar é preciso! 2.0
Refatorar é preciso! 2.0Refatorar é preciso! 2.0
Refatorar é preciso! 2.0
 
Gerenciando Projetos Com Ruby On Rails
Gerenciando Projetos Com Ruby On RailsGerenciando Projetos Com Ruby On Rails
Gerenciando Projetos Com Ruby On Rails
 
Isc aula 7
Isc   aula 7Isc   aula 7
Isc aula 7
 
O Prazer De Trabalhar Com Python
O Prazer De Trabalhar Com PythonO Prazer De Trabalhar Com Python
O Prazer De Trabalhar Com Python
 
Javascript Orientado a Objeto
Javascript Orientado a ObjetoJavascript Orientado a Objeto
Javascript Orientado a Objeto
 
Javascript OO
Javascript OOJavascript OO
Javascript OO
 
Conceitos Básicos de OO e Java
Conceitos Básicos de OO e JavaConceitos Básicos de OO e Java
Conceitos Básicos de OO e Java
 
C# 7
C# 7C# 7
C# 7
 
Javascript - boas práticas
Javascript - boas práticasJavascript - boas práticas
Javascript - boas práticas
 
Java: A Máquina Virtual e seu Mercado de Trabalho
Java: A Máquina Virtual e seu Mercado de TrabalhoJava: A Máquina Virtual e seu Mercado de Trabalho
Java: A Máquina Virtual e seu Mercado de Trabalho
 
Django - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonDjango - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com Python
 
Tester, pegue suas coisas, você está demitido
Tester, pegue suas coisas, você está demitidoTester, pegue suas coisas, você está demitido
Tester, pegue suas coisas, você está demitido
 

20º GURU-SP - Você realmente sabe JavaScript?