SlideShare uma empresa Scribd logo
1 de 51
Linguagens Dinamicas na JVM: o futuro do Java como plataforma! ,[object Object],Sun OSUM Leader [email_address]
Porque?? Agenda JVM /DaVinci Onde ?Quais? Deep Dive Perguntas?
Porque? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Porque ? ,[object Object],[object Object],[object Object]
Porque? ,[object Object],[object Object]
Porque? A origem! ,[object Object],[object Object],[object Object],[object Object]
Porque  a JVM? ,[object Object],[object Object],[object Object],[object Object],[object Object]
Porque? A Origem ,[object Object],[object Object],[object Object]
Linguagens Compiladas Scanner Parser Analisador Sintatico Analisador Semantico Otimizador Gerador de Codigo Tokens Parser Tree Representação Intermediaria Representação Intermediaria Codigo de Maquina Alvo
Linguagens Interpretadas INTERPRETADOR Código Fonte Dados OUTPUT
Porque?? Agenda JVM /DaVinci Onde ?Quais? Deep Dive Perguntas?
WORA?? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
JVM(JRE)  CLASSLOADER JRE Intepretador de Bytecodes Independentes de Plataforma .class / .jar
JVM (JRE) ,[object Object],[object Object],[object Object],[object Object],[object Object]
Outras Linguagens ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Linguagens Dinamicas ,[object Object],[object Object],[object Object],[object Object]
Linguagens Dinamicas ,[object Object],[object Object],[object Object]
JSR-223 ,[object Object],[object Object],[object Object]
JSR-292 ,[object Object],[object Object],[object Object]
DaVinci Virtual Machine ,[object Object],[object Object],[object Object],[object Object]
Porque?? Agenda JVM /DaVinci Conclusão Deep Dive Perguntas?
Python/Jython ,[object Object],[object Object],[object Object],[object Object],[object Object]
Python/Jython ,[object Object],[object Object],[object Object],[object Object]
Python/Jython ,[object Object],[object Object],[object Object],[object Object]
Python/Jython ,[object Object],[object Object],[object Object]
Python/Jython ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Javascript/Rhino/AJAX!? ,[object Object],[object Object],[object Object],[object Object]
Javascript/Rhino ,[object Object],[object Object],[object Object]
Javascript/Rhino ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ruby/JRuby ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ruby/JRuby ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ruby/JRuby ,[object Object],[object Object],[object Object]
Ruby/JRuby ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ruby/JRuby ,[object Object],[object Object],[object Object],[object Object]
Ruby/JRuby ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ruby/JRuby ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ruby/JRuby ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ruby/JRuby ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Ruby/JRuby ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Outras linguagens ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Groovy ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Clojure ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Clojure ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Scala ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Integração com outras tecnologias ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Integração com outras tecnologias ,[object Object],[object Object],[object Object]
Linguagens Dinamicas e Frameworks http://glassfish-scripting.dev.java.net
Porque?? Agenda JVM /DaVinci Conclusão Deep Dive Perguntas?
Conclusão ,[object Object],[object Object],[object Object],[object Object],[object Object]
Porque?? Agenda JVM /DaVinci Conclusão Deep Dive Perguntas?
Linguagens Dinamicas na JVM: o futuro do Java como plataforma! ,[object Object],Obrigado pelo seu tempo! Sun OSUM Leader [email_address]

Mais conteúdo relacionado

Mais procurados

Como Construir um Compilador cap-1
Como Construir um Compilador cap-1Como Construir um Compilador cap-1
Como Construir um Compilador cap-1
Maellson Marques
 
Programação em java linguagem, ap is, boas práticas e eclipse
Programação em java   linguagem, ap is, boas práticas e eclipseProgramação em java   linguagem, ap is, boas práticas e eclipse
Programação em java linguagem, ap is, boas práticas e eclipse
Filipe Bezerra Sousa
 
Java Scripting - Linguagens Interpretadas pelo Java
Java Scripting - Linguagens Interpretadas pelo JavaJava Scripting - Linguagens Interpretadas pelo Java
Java Scripting - Linguagens Interpretadas pelo Java
Paulo César M Jeveaux
 

Mais procurados (16)

Conhecendo Java
Conhecendo JavaConhecendo Java
Conhecendo Java
 
Apostila java completo
Apostila java completoApostila java completo
Apostila java completo
 
Introdução à Programação em Java - Aula 1 (PT-PT)
Introdução à Programação em Java - Aula 1 (PT-PT)Introdução à Programação em Java - Aula 1 (PT-PT)
Introdução à Programação em Java - Aula 1 (PT-PT)
 
Programação Orientada a Objetos com Java
Programação Orientada a Objetos com JavaProgramação Orientada a Objetos com Java
Programação Orientada a Objetos com Java
 
Como Construir um Compilador cap-1
Como Construir um Compilador cap-1Como Construir um Compilador cap-1
Como Construir um Compilador cap-1
 
Esta começando a programar para a web? Então começe com Rails
Esta começando a programar para a web? Então começe com RailsEsta começando a programar para a web? Então começe com Rails
Esta começando a programar para a web? Então começe com Rails
 
Java basico modulo_01
Java basico modulo_01Java basico modulo_01
Java basico modulo_01
 
Java acsp
Java acspJava acsp
Java acsp
 
Introdução ao JAVA (linguagem de programação WEB)
Introdução ao JAVA (linguagem de programação WEB)Introdução ao JAVA (linguagem de programação WEB)
Introdução ao JAVA (linguagem de programação WEB)
 
Programação em java linguagem, ap is, boas práticas e eclipse
Programação em java   linguagem, ap is, boas práticas e eclipseProgramação em java   linguagem, ap is, boas práticas e eclipse
Programação em java linguagem, ap is, boas práticas e eclipse
 
1213 java
1213 java1213 java
1213 java
 
Java Scripting - Linguagens Interpretadas pelo Java
Java Scripting - Linguagens Interpretadas pelo JavaJava Scripting - Linguagens Interpretadas pelo Java
Java Scripting - Linguagens Interpretadas pelo Java
 
Mini Curso Python
Mini Curso PythonMini Curso Python
Mini Curso Python
 
Grupo de estudo - Kotlin
Grupo de estudo - KotlinGrupo de estudo - Kotlin
Grupo de estudo - Kotlin
 
Livro - código limpo caps (3,4) (clean code)
Livro - código limpo caps (3,4) (clean code)Livro - código limpo caps (3,4) (clean code)
Livro - código limpo caps (3,4) (clean code)
 
Introdução ao Java
Introdução ao JavaIntrodução ao Java
Introdução ao Java
 

Destaque (7)

QCon São Paulo 2010 - JRuby
QCon São Paulo 2010 - JRubyQCon São Paulo 2010 - JRuby
QCon São Paulo 2010 - JRuby
 
Programação GUI com jRuby
Programação GUI com jRubyProgramação GUI com jRuby
Programação GUI com jRuby
 
Jasmine - Sinon - BrazilJS
Jasmine - Sinon - BrazilJSJasmine - Sinon - BrazilJS
Jasmine - Sinon - BrazilJS
 
Introdução a ruby
Introdução a rubyIntrodução a ruby
Introdução a ruby
 
WebApps minimalistas com Sinatra
WebApps minimalistas com SinatraWebApps minimalistas com Sinatra
WebApps minimalistas com Sinatra
 
Jruby - Ruby em Ambientes 100% Java
Jruby - Ruby em Ambientes 100% JavaJruby - Ruby em Ambientes 100% Java
Jruby - Ruby em Ambientes 100% Java
 
Rest Teoria E Pratica
Rest Teoria E PraticaRest Teoria E Pratica
Rest Teoria E Pratica
 

Semelhante a Linguagens Dinamicas na JVM

Java: Muito mais que uma linguagem!
Java: Muito mais que uma linguagem!Java: Muito mais que uma linguagem!
Java: Muito mais que uma linguagem!
Aécio Costa
 
Inovando na plataforma Java
Inovando na plataforma JavaInovando na plataforma Java
Inovando na plataforma Java
Eteg
 
Java 01 Java Visao Geral Detalhado
Java 01 Java Visao Geral DetalhadoJava 01 Java Visao Geral Detalhado
Java 01 Java Visao Geral Detalhado
Regis Magalhães
 
Java Fundamentos
Java FundamentosJava Fundamentos
Java Fundamentos
Wilson Lima
 
Jugday - Java Básico
Jugday - Java BásicoJugday - Java Básico
Jugday - Java Básico
Paloma Costa
 
Apresentação java
Apresentação javaApresentação java
Apresentação java
munosai
 
Phpjedi 090307090434-phpapp01 2
Phpjedi 090307090434-phpapp01 2Phpjedi 090307090434-phpapp01 2
Phpjedi 090307090434-phpapp01 2
PrinceGuru MS
 

Semelhante a Linguagens Dinamicas na JVM (20)

Java virtual machine quantas linguas fala a jvm2
Java virtual machine   quantas linguas fala a jvm2Java virtual machine   quantas linguas fala a jvm2
Java virtual machine quantas linguas fala a jvm2
 
Java: Muito mais que uma linguagem!
Java: Muito mais que uma linguagem!Java: Muito mais que uma linguagem!
Java: Muito mais que uma linguagem!
 
Conhecendo a JSR 223: Scripting for the Java Platform
Conhecendo a JSR 223: Scripting for the Java PlatformConhecendo a JSR 223: Scripting for the Java Platform
Conhecendo a JSR 223: Scripting for the Java Platform
 
Inovando na plataforma Java
Inovando na plataforma JavaInovando na plataforma Java
Inovando na plataforma Java
 
Inovando na Plataforma Java
Inovando na Plataforma JavaInovando na Plataforma Java
Inovando na Plataforma Java
 
Introducao logica2
Introducao logica2Introducao logica2
Introducao logica2
 
1.introducao java
1.introducao java1.introducao java
1.introducao java
 
Produtividade em Java com Grails
Produtividade em Java com GrailsProdutividade em Java com Grails
Produtividade em Java com Grails
 
Java 01 Java Visao Geral
Java 01 Java Visao GeralJava 01 Java Visao Geral
Java 01 Java Visao Geral
 
Java 01 Java Visao Geral Detalhado
Java 01 Java Visao Geral DetalhadoJava 01 Java Visao Geral Detalhado
Java 01 Java Visao Geral Detalhado
 
Java Fundamentos
Java FundamentosJava Fundamentos
Java Fundamentos
 
Jugday - Java Básico
Jugday - Java BásicoJugday - Java Básico
Jugday - Java Básico
 
Java basico modulo_01
Java basico modulo_01Java basico modulo_01
Java basico modulo_01
 
Java basico modulo_01
Java basico modulo_01Java basico modulo_01
Java basico modulo_01
 
Java basico modulo_01
Java basico modulo_01Java basico modulo_01
Java basico modulo_01
 
Apresentação java
Apresentação javaApresentação java
Apresentação java
 
Java Seminar
Java SeminarJava Seminar
Java Seminar
 
01 introducao ao java
01   introducao ao java01   introducao ao java
01 introducao ao java
 
JAVA: Muito mais que uma linguagem
JAVA: Muito mais que uma linguagemJAVA: Muito mais que uma linguagem
JAVA: Muito mais que uma linguagem
 
Phpjedi 090307090434-phpapp01 2
Phpjedi 090307090434-phpapp01 2Phpjedi 090307090434-phpapp01 2
Phpjedi 090307090434-phpapp01 2
 

Último

Último (6)

ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 

Linguagens Dinamicas na JVM

Notas do Editor

  1. Slide 1: title and presenter's name Slide 2: topic intro - what product/technology is Slide 3: topic intro - who is the target market (be very as specific as possible: e.g. geo, developer type, etc.) Slide 4: demo Slide 5: certification Slide 6: call-to-action Slide 7: resources: (URLs, where to go/who to call for more information, etc.)
  2. Slide 1: title and presenter's name Slide 2: topic intro - what product/technology is Slide 3: topic intro - who is the target market (be very as specific as possible: e.g. geo, developer type, etc.) Slide 4: demo Slide 5: certification Slide 6: call-to-action Slide 7: resources: (URLs, where to go/who to call for more information, etc.)
  3. Slide 1: title and presenter's name Slide 2: topic intro - what product/technology is Slide 3: topic intro - who is the target market (be very as specific as possible: e.g. geo, developer type, etc.) Slide 4: demo Slide 5: certification Slide 6: call-to-action Slide 7: resources: (URLs, where to go/who to call for more information, etc.)
  4. Slide 1: title and presenter's name Slide 2: topic intro - what product/technology is Slide 3: topic intro - who is the target market (be very as specific as possible: e.g. geo, developer type, etc.) Slide 4: demo Slide 5: certification Slide 6: call-to-action Slide 7: resources: (URLs, where to go/who to call for more information, etc.)
  5. Slide 1: title and presenter's name Slide 2: topic intro - what product/technology is Slide 3: topic intro - who is the target market (be very as specific as possible: e.g. geo, developer type, etc.) Slide 4: demo Slide 5: certification Slide 6: call-to-action Slide 7: resources: (URLs, where to go/who to call for more information, etc.)