SlideShare una empresa de Scribd logo
1 de 70
Plataforma JAVA
         Muito além da




              http://www.flickr.com/photos/7387467@N04/2630044768/
Andre Fonseca

Senior Dev @ Globo.com

Experiência > 10 anos
http://www.flickr.com/photos/ahren_d/3002046902/sizes/l/in/photostream/
http://xahlee.org/java-a-day/java_logo.html
Linguagem
Linguagem
Novidade
Linguagem
     ÃO
    N
Novidade
Ruby
Ruby




       Lisp
Ruby




                Lisp




       Python
Ruby




                       Lisp




Ecma          Python
Ruby



SmallTalk                          Lisp




            Ecma          Python
Ruby



SmallTalk                          Lisp
                   JAVA




            Ecma          Python
???
???
???
WTF !!!
Calma ...
http://www.flickr.com/photos/pgordon/2531908489/
“     Vem comigo, vai .....
http://soundcloud.com/ramonpage/sets/rapaz-incomum-a-aparicao/
http://www.flickr.com/photos/psychojoanes/403053654/sizes/l/in/photostream/
Java evoluiu
Porém . . .
Complexidade
Sopa de letrinhas
RIP
DESAFIO !!!!
a = [1,2,3,4,5,6,7,8,9]
a.map! {|x| x + 2 }       Ruby
#!/usr/bin/ruby -w

# Created by Michael Williams 12/19/2005
# Licensed under Create Commons Attribution License

# Example 3 - Read File with Exception Handling
counter = 1
begin
! file = File.new("readfile.rb", "r")
! while (line = file.gets)
! ! puts "#{counter}: #{line}"
! ! counter = counter + 1
! end
! file.close
rescue => err
! puts "Exception: #{err}"
! err
end
e em Java . . .
Produtividade
Escrever Menos
Escrever Menos
   fazer Mais
?
Jogar tudo fora
•Thread
•JIT
•GC
•Perfomance
•HostSpot
•Base Instalada
•etc ...
Ruby
Ruby




       Lisp
Ruby




                Lisp




       Python
Ruby




                       Lisp




Ecma          Python
Ruby



SmallTalk                          Lisp




            Ecma          Python
Ruby



SmallTalk                          Lisp
                   JVM




            Ecma          Python
Pode ?
Pois tudo isso é   REAL
http://www.scala-lang.org/
Como !?!?
http://en.wikipedia.org/wiki/Bean_Scripting_Framework
JSR 223

http://www.jcp.org/en/jsr/detail?id=223
JSR 274

http://www.jcp.org/en/jsr/detail?id=274
JSR 292

http://www.jcp.org/en/jsr/detail?id=292
Temos que passar as outras
linguagens para Java e depois
 passar para a JVM e que fará
    o restante do trabalho...
Outra linguagem


      BSF


      JAVA


JVM      Bytecode
Outra linguagem




ByteCode
Porque ?
Novas
possibilidades
Novas
formas
Dúvidas ?
Obrigado

       @aoqfonseca
  aoqfonseca@gmail.com

  http://andrefonseca.net

http://github.com/aoqfonseca

Más contenido relacionado

La actualidad más candente

Picademy #3 Python Picamera GPIO Workshop
Picademy #3 Python Picamera GPIO WorkshopPicademy #3 Python Picamera GPIO Workshop
Picademy #3 Python Picamera GPIO Workshopbennuttall
 
用Ruby编写博客应用
用Ruby编写博客应用用Ruby编写博客应用
用Ruby编写博客应用Jiang Wu
 
No more script tag soup!
No more script tag soup!No more script tag soup!
No more script tag soup!Kyle Simpson
 
scaling compiled applications - highload 2013
scaling compiled applications - highload 2013scaling compiled applications - highload 2013
scaling compiled applications - highload 2013ice799
 
A First Look at RedwoodJS
A First Look at RedwoodJSA First Look at RedwoodJS
A First Look at RedwoodJSAnthony Campolo
 
Write parser with fun!
Write parser with fun!Write parser with fun!
Write parser with fun!Akihiro Okuno
 

La actualidad más candente (10)

Picademy #3 Python Picamera GPIO Workshop
Picademy #3 Python Picamera GPIO WorkshopPicademy #3 Python Picamera GPIO Workshop
Picademy #3 Python Picamera GPIO Workshop
 
2021laravelconftwslides4
2021laravelconftwslides42021laravelconftwslides4
2021laravelconftwslides4
 
Clojure presentation
Clojure presentationClojure presentation
Clojure presentation
 
用Ruby编写博客应用
用Ruby编写博客应用用Ruby编写博客应用
用Ruby编写博客应用
 
No more script tag soup!
No more script tag soup!No more script tag soup!
No more script tag soup!
 
Jamstack Denver
Jamstack DenverJamstack Denver
Jamstack Denver
 
scaling compiled applications - highload 2013
scaling compiled applications - highload 2013scaling compiled applications - highload 2013
scaling compiled applications - highload 2013
 
A First Look at RedwoodJS
A First Look at RedwoodJSA First Look at RedwoodJS
A First Look at RedwoodJS
 
Extjs Howto
Extjs HowtoExtjs Howto
Extjs Howto
 
Write parser with fun!
Write parser with fun!Write parser with fun!
Write parser with fun!
 

Destacado

Fisl aumentando lucro-python
Fisl aumentando lucro-pythonFisl aumentando lucro-python
Fisl aumentando lucro-pythonAndre Fonseca
 
Como fica a arquitetura de software em um projeto ágil? Big Up Front, Inc...
Como fica a arquitetura de software em um projeto ágil? Big Up Front, Inc...Como fica a arquitetura de software em um projeto ágil? Big Up Front, Inc...
Como fica a arquitetura de software em um projeto ágil? Big Up Front, Inc...Anderson Diniz Hummel
 
Tdc 2104 florianopolis - Brincando com a inteligência coletiva
Tdc 2104 florianopolis - Brincando com a inteligência coletivaTdc 2104 florianopolis - Brincando com a inteligência coletiva
Tdc 2104 florianopolis - Brincando com a inteligência coletivaAndre Fonseca
 
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika AldabaLightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldabaux singapore
 

Destacado (9)

Jasmine frontinrio
Jasmine frontinrioJasmine frontinrio
Jasmine frontinrio
 
Design Patterns
Design PatternsDesign Patterns
Design Patterns
 
Fisl aumentando lucro-python
Fisl aumentando lucro-pythonFisl aumentando lucro-python
Fisl aumentando lucro-python
 
Como fica a arquitetura de software em um projeto ágil? Big Up Front, Inc...
Como fica a arquitetura de software em um projeto ágil? Big Up Front, Inc...Como fica a arquitetura de software em um projeto ágil? Big Up Front, Inc...
Como fica a arquitetura de software em um projeto ágil? Big Up Front, Inc...
 
Plataforma java
Plataforma javaPlataforma java
Plataforma java
 
Codigo legado fisl
Codigo legado fislCodigo legado fisl
Codigo legado fisl
 
Tdc 2104 florianopolis - Brincando com a inteligência coletiva
Tdc 2104 florianopolis - Brincando com a inteligência coletivaTdc 2104 florianopolis - Brincando com a inteligência coletiva
Tdc 2104 florianopolis - Brincando com a inteligência coletiva
 
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika AldabaLightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
Lightning Talk #9: How UX and Data Storytelling Can Shape Policy by Mika Aldaba
 
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job? Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
 

Similar a Java Platform Beyond Code - Leveraging the JVM for Productivity

DiUS Computing Lca Rails Final
DiUS  Computing Lca Rails FinalDiUS  Computing Lca Rails Final
DiUS Computing Lca Rails FinalRobert Postill
 
Writing Bullet-Proof Javascript: By Using CoffeeScript
Writing Bullet-Proof Javascript: By Using CoffeeScriptWriting Bullet-Proof Javascript: By Using CoffeeScript
Writing Bullet-Proof Javascript: By Using CoffeeScriptSusan Potter
 
The secret of programming language development and future
The secret of programming  language development and futureThe secret of programming  language development and future
The secret of programming language development and futureHiroshi SHIBATA
 
Ros with docker 20151107
Ros with docker  20151107Ros with docker  20151107
Ros with docker 20151107Sejin Park
 
Bitter Java, Sweeten with JRuby
Bitter Java, Sweeten with JRubyBitter Java, Sweeten with JRuby
Bitter Java, Sweeten with JRubyBrian Sam-Bodden
 
WebSocket For Web Rubyists
WebSocket For Web RubyistsWebSocket For Web Rubyists
WebSocket For Web RubyistsMu-Fan Teng
 
Libraries Frameworks And Cms
Libraries Frameworks And CmsLibraries Frameworks And Cms
Libraries Frameworks And CmsMark Casias
 
Web Frameworks of the Future
Web Frameworks of the FutureWeb Frameworks of the Future
Web Frameworks of the Futureelliando dias
 
Railsチュートリアルの歩き方 (第4版)
Railsチュートリアルの歩き方 (第4版)Railsチュートリアルの歩き方 (第4版)
Railsチュートリアルの歩き方 (第4版)Yohei Yasukawa
 
Why you should be excited about ClojureScript
Why you should be excited about ClojureScriptWhy you should be excited about ClojureScript
Why you should be excited about ClojureScriptelliando dias
 
JRuby, Ruby, Rails and You on the Cloud
JRuby, Ruby, Rails and You on the CloudJRuby, Ruby, Rails and You on the Cloud
JRuby, Ruby, Rails and You on the CloudHiro Asari
 
Web application intro + a bit of ruby (revised)
Web application intro + a bit of ruby (revised)Web application intro + a bit of ruby (revised)
Web application intro + a bit of ruby (revised)Tobias Pfeiffer
 
Machine vision and device integration with the Ruby programming language (2008)
Machine vision and device integration with the Ruby programming language (2008)Machine vision and device integration with the Ruby programming language (2008)
Machine vision and device integration with the Ruby programming language (2008)Jan Wedekind
 
Lessons Learnt in 2009
Lessons Learnt in 2009Lessons Learnt in 2009
Lessons Learnt in 2009pratiknaik
 
PyCon US 2009: Challenges and Opportunities for Python
PyCon US 2009: Challenges and Opportunities for PythonPyCon US 2009: Challenges and Opportunities for Python
PyCon US 2009: Challenges and Opportunities for PythonTed Leung
 
The story of language development
The story of language developmentThe story of language development
The story of language developmentHiroshi SHIBATA
 

Similar a Java Platform Beyond Code - Leveraging the JVM for Productivity (20)

DiUS Computing Lca Rails Final
DiUS  Computing Lca Rails FinalDiUS  Computing Lca Rails Final
DiUS Computing Lca Rails Final
 
Writing Bullet-Proof Javascript: By Using CoffeeScript
Writing Bullet-Proof Javascript: By Using CoffeeScriptWriting Bullet-Proof Javascript: By Using CoffeeScript
Writing Bullet-Proof Javascript: By Using CoffeeScript
 
The secret of programming language development and future
The secret of programming  language development and futureThe secret of programming  language development and future
The secret of programming language development and future
 
Scalive
ScaliveScalive
Scalive
 
Ros with docker 20151107
Ros with docker  20151107Ros with docker  20151107
Ros with docker 20151107
 
Bitter Java, Sweeten with JRuby
Bitter Java, Sweeten with JRubyBitter Java, Sweeten with JRuby
Bitter Java, Sweeten with JRuby
 
WebSocket For Web Rubyists
WebSocket For Web RubyistsWebSocket For Web Rubyists
WebSocket For Web Rubyists
 
Libraries Frameworks And Cms
Libraries Frameworks And CmsLibraries Frameworks And Cms
Libraries Frameworks And Cms
 
Web Frameworks of the Future
Web Frameworks of the FutureWeb Frameworks of the Future
Web Frameworks of the Future
 
Ruby - The Hard Bits
Ruby - The Hard BitsRuby - The Hard Bits
Ruby - The Hard Bits
 
Ruby
RubyRuby
Ruby
 
Railsチュートリアルの歩き方 (第4版)
Railsチュートリアルの歩き方 (第4版)Railsチュートリアルの歩き方 (第4版)
Railsチュートリアルの歩き方 (第4版)
 
Why you should be excited about ClojureScript
Why you should be excited about ClojureScriptWhy you should be excited about ClojureScript
Why you should be excited about ClojureScript
 
JRuby, Ruby, Rails and You on the Cloud
JRuby, Ruby, Rails and You on the CloudJRuby, Ruby, Rails and You on the Cloud
JRuby, Ruby, Rails and You on the Cloud
 
Web application intro + a bit of ruby (revised)
Web application intro + a bit of ruby (revised)Web application intro + a bit of ruby (revised)
Web application intro + a bit of ruby (revised)
 
Machine vision and device integration with the Ruby programming language (2008)
Machine vision and device integration with the Ruby programming language (2008)Machine vision and device integration with the Ruby programming language (2008)
Machine vision and device integration with the Ruby programming language (2008)
 
Lessons Learnt in 2009
Lessons Learnt in 2009Lessons Learnt in 2009
Lessons Learnt in 2009
 
PyCon US 2009: Challenges and Opportunities for Python
PyCon US 2009: Challenges and Opportunities for PythonPyCon US 2009: Challenges and Opportunities for Python
PyCon US 2009: Challenges and Opportunities for Python
 
iSoligorsk #3 2013
iSoligorsk #3 2013iSoligorsk #3 2013
iSoligorsk #3 2013
 
The story of language development
The story of language developmentThe story of language development
The story of language development
 

Último

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 

Último (20)

Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 

Java Platform Beyond Code - Leveraging the JVM for Productivity

Notas del editor

  1. \n
  2. \n
  3. Eu vim falar de java, óbvio.\n
  4. \n
  5. \n
  6. \n
  7. \n
  8. Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não em java. Mas ao mesmo tempo eu vim para falar de java.\n
  9. Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não em java. Mas ao mesmo tempo eu vim para falar de java.\n
  10. Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não em java. Mas ao mesmo tempo eu vim para falar de java.\n
  11. Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não em java. Mas ao mesmo tempo eu vim para falar de java.\n
  12. Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não em java. Mas ao mesmo tempo eu vim para falar de java.\n
  13. Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não em java. Mas ao mesmo tempo eu vim para falar de java.\n
  14. \n
  15. \n
  16. \n
  17. \n
  18. Aqui estabelecer uma linha do tempo do Java e do mercado de TI. Mostrar como as coisas foram evoluindo e como a linguagem acompanhou\n
  19. A linguagem evolui para atender diversas demandas. Cresceu e cresceu muito. Evolui na tentativa de atender a todos os pedidos e necessidades de sua comunidade.\n
  20. \n
  21. Conforme cresceu ela também aumentou demais a sua complexidade. A sua curva de aprendizado é enorme. Para fazer qualquer coisa em java, simples, como um site com um CRUD o conhecimento tem que ser grande.\n
  22. Então ela virou uma enorme sopa de letrinhas. É JPA, J2EE, JAX, JAX-RPC, J2ME, Java NIO, JSPs, Spring, Struts, Maven ... \n
  23. Virou uma visão de bala de prata. Pronta para resolver qualquer problema. Virou uma panacéia. A cura para todos os males. Se tornou o grande ORACULO (piadinha com o Oracle)\n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. Outras linguagens com outros paradigmas podem se mostrar ferramentas melhores para sermos mais produtivos. Podemos resolver os problemas com menos código, menos horas e muitas vezes de formas muito mais eficiente pelo simples fato de estarmos em outro paradigma. Um exemplo é o Clojures, Scala, etc. \n
  32. \n
  33. \n
  34. \n
  35. Para mim a JVM é a grande invenção. ela trouxe a verdadeira. Embora tenha sido feita para a linguagem, ela em si é um avanço gigantesco\n
  36. Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não java.\n
  37. Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não java.\n
  38. Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não java.\n
  39. Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não java.\n
  40. Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não java.\n
  41. Eu vim aqui hoje falar de outras linguagens. Outras formas de fazer as coisas que não java.\n
  42. Com isso podemos partir para outra linguagens que facilitam a resolução dos meus problemas ou me façam mais produtivos e conviver bem com meu ambiente e meu legado feito em java mesmo. Não preciso jogar tudo no lixo nem esquecer do que eu sei em java.\n
  43. \n
  44. \n
  45. Alguns exemplos de linguagens dentro da JVM\n
  46. Alguns exemplos de linguagens dentro da JVM\n
  47. Alguns exemplos de linguagens dentro da JVM\n
  48. Alguns exemplos de linguagens dentro da JVM\n
  49. \n
  50. \n
  51. Bean Scripting Framework\n
  52. é a jsr de scripting dentro da linguagem. É a definição da api para escrever engines para interpretar outras linguagens dentro do contexto de java\n
  53. This specification will standardize BeanShell, a Java syntax compatible scripting language for the Java platform.The BeanShell language bridges Java into the scripting domain in a natural way, allowing developers to mix static Java syntax with scripting conventions such as optional typing, simple closures, dynamic commands, and other conveniences.\nBeanShell is a VM hosted language, supporting dynamic execution of the full Java grammar and semantics as well as transparent access to Java objects and APIs. Additional scripting and convenience features are brought into the language as a strict superset of the the Java language syntax. In this way BeanShell attempts to minimize both the syntactic and runtime barriers between Java application code and scripts, easing development and facilitating migration between scripts and static Java.\nThis specification will standardize the BeanShell language syntax and a minimal set of core commands and environmental components.\n\n
  54. é a especificação para invocação dinamica de métodos dentro da jvm\n
  55. \n
  56. \n
  57. \n
  58. Graças a algumas jsrs a jvm passou de simplesmente tratar código escrito exclusivamente em java para se tornar uma plataforma poliglota. Nisso podemos citar o BeanShell ... E mais por final a parte de implementação a questão dos invoke dinamics e outras coisas que tornaram a jvm mais aderente a novas linguagens e seus paradigmas.\nJSR 223, 274, 292, 338, \n
  59. \n
  60. \n
  61. \n
  62. \n
  63. \n