Your SlideShare is downloading. ×
JRuby - Explorando um mundo de possibilidades
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

JRuby - Explorando um mundo de possibilidades

839
views

Published on

apresenta o JRuby e vários exemplos usando o JRuby com tecnologias diversas como: RSpec, JBoss, JMS, JDBC, Ruboto, etc... além de apresentar o laboratório aberto do JRuby-lab que é um projeto aberto …

apresenta o JRuby e vários exemplos usando o JRuby com tecnologias diversas como: RSpec, JBoss, JMS, JDBC, Ruboto, etc... além de apresentar o laboratório aberto do JRuby-lab que é um projeto aberto com vários exemplos e referências usando o JRuby.

Published in: Technology

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
839
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
7
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • Por isso o “ Explorando um Mundo de possibilidades ” , pois não conhecemos todo o seu potencial, e por isso estamos estudando!
  • JRuby is a Java implementation of the Ruby programming language. It is free software released under a three-way CPL/GPL/LGPL license. JRuby is tightly integrated with Java to allow the embedding of the interpreter into any Java application with full two-way access between the Java and the Ruby code (similar to Jython for the Python language).
  • http://www.infoq.com/br/articles/invokedynamic “ Os pontos fortes da plataforma Java, tais como um garbage collector (coletor de lixo) eficiente, um modelo robusto de segurança e a disponibilidade ampla do runtime do Java (JRE), juntamente com uma grande quantidade de bibliotecas e ferramentas, fizeram a plataforma ser amplamente adotada para esta finalidade, havendo hoje mais de 240 diferentes linguagens que executam sobre a máquina virtual Java (JVM). ” “ A API de MethodHandles (referências de métodos) descrita na JSR-292 fornece os elementos básicos para a escrita da "cola" simples entre o método de origem (o "chamador") e o de destino.” (Charles Nutter) “ A InvokeDynamic contacta a sua linguagem ou biblioteca quando uma chamada dinâmica é feita, e você responde fornecendo uma referência de método (ou uma cadeia de referências). A referência então conecta a origem ao destino da maneira apropriada.” (Charles Nutter)
  • http://www.infoq.com/br/articles/invokedynamic Tanto a Microsoft, com o .Net 4 e a DLR, quanto a Oracle, através do projeto Da Vinci Machine e do Java 7, estão procurando aprimorar o suporte a linguagens alternativas que têm como destino suas máquinas virtuais. Este movimento é reflexo de uma tendência crescente entre os desenvolvedores e implementadores de linguagens, que estão utilizando cada vez mais ambientes de execução pré-existentes para executar suas linguagens, dado que desenvolver a partir do zero um novo ambiente de execução representa um grande investimento. Os pontos fortes da plataforma Java, tais como um garbage collector (coletor de lixo) eficiente, um modelo robusto de segurança e a disponibilidade ampla do runtime do Java (JRE), juntamente com uma grande quantidade de bibliotecas e ferramentas, fizeram a plataforma ser amplamente adotada para esta finalidade, havendo hoje mais de 240 diferentes linguagens que executam sobre a máquina virtual Java (JVM).
  • “… havendo hoje mais de 240 diferentes linguagens que executam sobre a máquina virtual Java (JVM).”
  • Transcript

    • 1. JRuby “Explorando um Mundo de Possibilidades” Mateus e Paulo Igorstaff@idopter.com
    • 2. JRuby “Explorando um Mundo de Possibilidades” @mateuslinhares e @pigodinhostaff@idopter.com
    • 3. staff@idopter.com
    • 4. http://idopter.comstaff@idopter.com
    • 5. http://idopter.comstaff@idopter.com
    • 6. http://idopter.comstaff@idopter.com
    • 7. http://idopter.comstaff@idopter.com
    • 8. http://idopter.com http://lancelote.comstaff@idopter.com
    • 9. Fim do “Merchan”staff@idopter.com
    • 10. Objetivo da palestra Compartilhar nosso estudos!staff@idopter.com
    • 11. O que é o JRuby? JAVA + RUBY?staff@idopter.com
    • 12. “…é uma implementação da linguagem Ruby em Java”staff@idopter.com
    • 13. “…é uma implementação da linguagem Ruby em Java”staff@idopter.com
    • 14. História• criado em 2001 por Jan Arne Petersen• Core Team 2008 – Liderados por Charles Nutter• JRuby 1.1 – JIT e AOT compilation (Ruby 1.8.7)• 2009 Core Team vai para Engine Yardstaff@idopter.com
    • 15. História• 0.9 (2006) – suporte ao Rails• 1.1 (2008) – Melhoria de performance com JIT e AOT• 1.1.4 (2009) – suporte ao Ruby 1.9• 1.2.0 (2009) – compilador JIT para Ruby 1.9 e o projeto Ruboto (suporte para Android)• 1.3.0 (2009) – JRuby no GAE/J• 1.4.0 (2009) – suporte nativo para o Windows• 1.5.0 (2010) – suporte nativo para UNIX-based, libs padrões para o Rake-Ant, RubyGems e RSpec• 1.6.0 (2011) – Ruby 1.9.2staff@idopter.com
    • 16. boring…staff@idopter.com
    • 17. JSR-292staff@idopter.com
    • 18. JSR-292 Invokedynamic (projeto Da Vinci Machine)staff@idopter.com
    • 19. JSR-292 http://www.infoq.com/br/ articles/invokedynamicstaff@idopter.com
    • 20. staff@idopter.com
    • 21. Porque JRuby?staff@idopter.com
    • 22. Palavras de Charles Nutter http://www.slideshare.net/CharlesN utter/rubyconf-brazil-2010-jrubystaff@idopter.com
    • 23. Se você… …quer ou precisa rodar na JVM… …JRuby é a resposta!staff@idopter.com
    • 24. Se você… …precisa usar uma lib java… …JRuby é a resposta!staff@idopter.com
    • 25. Se você… …quer o melhor GC do mundo… …JRuby é a resposta!staff@idopter.com
    • 26. Se você… …odeia lidar com libs nativas… …JRuby é a resposta!staff@idopter.com
    • 27. Se você… …precisa desenvolver ou “deployar” em qualquer OS/plataforma que seja… …JRuby é a resposta!staff@idopter.com
    • 28. Se você… …quer integrar com outras linguagens como Clojure, Scala, Mirah… …JRuby é a resposta!staff@idopter.com
    • 29. Se você… …quer um Ruby melhor… …JRuby é a resposta!staff@idopter.com
    • 30. Se você… …quer um Ruby melhor… …JRuby é a resposta!staff@idopter.com
    • 31. O melhor dos dois mundos• Java(JVM) oferece – GC eficiente – Green Threadingstaff@idopter.com
    • 32. O melhor dos dois mundos• Java(JVM) oferece – GC eficiente – Green Threading – Portabilidade – Grande Legadostaff@idopter.com
    • 33. O melhor dos dois mundos• Ruby oferece – Tipagem dinâmica – Orientação a Objetos – Classes abertas – Metaprogramaçãostaff@idopter.com
    • 34. Let’s do it!• Instalando JRuby• Hello World• Exemplos• Exemplos• Exemplos• …staff@idopter.com
    • 35. Instalando o JRubystaff@idopter.com
    • 36. http://jruby.orgstaff@idopter.com
    • 37. http://jruby.org/getting-startedstaff@idopter.com
    • 38. …pra dar sorte! “Hello World”staff@idopter.com
    • 39. …pra dar sorte! “Hello World”staff@idopter.com
    • 40. Quais são as possibilidades? Exemplos, Exemplos, Exemplos, …staff@idopter.com
    • 41. Classes Java no JRuby require ‘java’staff@idopter.com
    • 42. Java no JRubystaff@idopter.com
    • 43. Java no JRuby usando classes Javastaff@idopter.com
    • 44. usando classes JavaImportando a classe Java classe Javastaff@idopter.com
    • 45. Java : java.lang.System JRuby: Java::JavaLang::Systemstaff@idopter.com
    • 46. Pacotes Java no JRuby MóduloJavaSocket staff@idopter.com
    • 47. Pacotes Java no JRubystaff@idopter.com
    • 48. Referência ao módulostaff@idopter.com
    • 49. Usando interface javastaff@idopter.com
    • 50. Usando as classes javastaff@idopter.com
    • 51. JRuby Socket jruby-lab/examples/socket_examplestaff@idopter.com
    • 52. MySQL com JRuby usando JDBC jruby-lab/examples/mysql-jdbcstaff@idopter.com
    • 53. Usando .JARstaff@idopter.com
    • 54. Java Swing com JRuby jruby-lab/examples/jruby-swingstaff@idopter.com
    • 55. Rails e JRubystaff@idopter.com
    • 56. JRuby no Toncat/JBoss/Glassfishstaff@idopter.com
    • 57. JRuby e JMSstaff@idopter.com
    • 58. Rspec e Java jruby-lab/examples/testing-java-with- jrubystaff@idopter.com
    • 59. E o que mais?staff@idopter.com
    • 60. Projeto Ruboto JRuby is everywhere!staff@idopter.com
    • 61. Projeto Ruboto =>staff@idopter.com
    • 62. Projeto Ruboto =>staff@idopter.com
    • 63. Projeto Rubotostaff@idopter.com
    • 64. E o que mais?staff@idopter.com
    • 65. JRuby no Google App Enginestaff@idopter.com
    • 66. …quer mais?staff@idopter.com
    • 67. quer mais?staff@idopter.com
    • 68. Referências e Dicas Jruby-Labstaff@idopter.com
    • 69. staff@idopter.com
    • 70. • Exemplos • Referências – Artigos – Wiki – Apresentações – Blog – Twitterstaff@idopter.com
    • 71. https://github.com/pigor/jruby-labstaff@idopter.com
    • 72. staff@idopter.com
    • 73. http://groups.google.com/group/guru-pastaff@idopter.com
    • 74. Obrigado!!! @mateuslinhares e @pigodinho {mateus, pigor}@idopter.comstaff@idopter.com
    • 75. JRuby “Explorando um Mundo de Possibilidades” @mateuslinhares e @pigodinhostaff@idopter.com