SlideShare ist ein Scribd-Unternehmen logo
1 von 118
Downloaden Sie, um offline zu lesen
Introdução ao Ruby
                         powered by JRuby

Monday, March 23, 2009
AkitaOnRails.com




Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
Pequena introdução

                           Instalando o Ambiente

                         Apresentando a Linguagem

                            Testando com Ruby

                              Rails on JRuby

                               Aprendendo

Monday, March 23, 2009
Pequena introdução

                           Instalando o Ambiente

                         Apresentando a Linguagem

                            Testando com Ruby

                              Rails on JRuby

                               Aprendendo

Monday, March 23, 2009
Pequena introdução

                           Instalando o Ambiente

                         Apresentando a Linguagem

                            Testando com Ruby

                              Rails on JRuby

                               Aprendendo

Monday, March 23, 2009
Pequena introdução

                           Instalando o Ambiente

                         Apresentando a Linguagem

                            Testando com Ruby

                              Rails on JRuby

                               Aprendendo

Monday, March 23, 2009
Pequena introdução

                           Instalando o Ambiente

                         Apresentando a Linguagem

                            Testando com Ruby

                              Rails on JRuby

                               Aprendendo

Monday, March 23, 2009
Pequena introdução

                           Instalando o Ambiente

                         Apresentando a Linguagem

                            Testando com Ruby

                              Rails on JRuby

                               Aprendendo

Monday, March 23, 2009
1
Monday, March 23, 2009
“Matz”




                         1993
Monday, March 23, 2009
“Prag Dave”




                         2001
Monday, March 23, 2009
“DHH”



                          2004
Monday, March 23, 2009
Charles Nutter



                              2006
Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
“Tornar as coisas simples
                   fáceis e as coisas
                 complexas possíveis”
                         Filosofia Ruby




Monday, March 23, 2009
Monday, March 23, 2009
x mais lento que C++




Monday, March 23, 2009
x mais lento que C++


                         0   50              100
                                                         150
                                                               200
     Python 2


      Ruby 1.9


           Perl

          JRuby

        Python 3

             PHP

        Ruby 1.8.6




Monday, March 23, 2009
1
Monday, March 23, 2009
2
Monday, March 23, 2009
Instalando JRuby

                         jruby.codehaus.org




Monday, March 23, 2009
dist.codehaus.org/jruby
Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
cd /opt/local


             wget http://dist.codehaus.org/jruby/1.2.0/
             jruby-bin-1.2.0.zip


             unzip jruby-bin-1.2.0.zip


             ln -s jruby jruby-bin-1.2.0


             mv jruby/ruby/lib/ruby/gems jruby_gems


             ln -s jruby/ruby/lib/ruby/gems jruby_gems


Monday, March 23, 2009
cd /opt/local


             wget http://dist.codehaus.org/jruby/1.2.0/
             jruby-bin-1.2.0.zip


             unzip jruby-bin-1.2.0.zip


             ln -s jruby jruby-bin-1.2.0


             mv jruby/ruby/lib/ruby/gems jruby_gems


             ln -s jruby/ruby/lib/ruby/gems jruby_gems


Monday, March 23, 2009
cd /opt/local


             wget http://dist.codehaus.org/jruby/1.2.0/
             jruby-bin-1.2.0.zip


             unzip jruby-bin-1.2.0.zip


             ln -s jruby jruby-bin-1.2.0


             mv jruby/ruby/lib/ruby/gems jruby_gems


             ln -s jruby/ruby/lib/ruby/gems jruby_gems


Monday, March 23, 2009
cd /opt/local


             wget http://dist.codehaus.org/jruby/1.2.0/
             jruby-bin-1.2.0.zip


             unzip jruby-bin-1.2.0.zip


             ln -s jruby jruby-bin-1.2.0


             mv jruby/ruby/lib/ruby/gems jruby_gems


             ln -s jruby/ruby/lib/ruby/gems jruby_gems


Monday, March 23, 2009
cd /opt/local


             wget http://dist.codehaus.org/jruby/1.2.0/
             jruby-bin-1.2.0.zip


             unzip jruby-bin-1.2.0.zip


             ln -s jruby jruby-bin-1.2.0


             mv jruby/ruby/lib/ruby/gems jruby_gems


             ln -s jruby/ruby/lib/ruby/gems jruby_gems


Monday, March 23, 2009
cd /opt/local


             wget http://dist.codehaus.org/jruby/1.2.0/
             jruby-bin-1.2.0.zip


             unzip jruby-bin-1.2.0.zip


             ln -s jruby jruby-bin-1.2.0


             mv jruby/ruby/lib/ruby/gems jruby_gems


             ln -s jruby/ruby/lib/ruby/gems jruby_gems


Monday, March 23, 2009
Monday, March 23, 2009
export JRUBY_HOME=/opt/local/jruby

                 export $JRUBY_HOME/bin:$PATH




Monday, March 23, 2009
jruby -S gem install ...

                   activerecord-jdbc-adapter             jetty-rails

                   activerecord-jdbcmysql-adapter        jruby-openssl

                   activerecord-jdbcpostgresql-adapter   nifty-generators

                   activerecord-jdbcsqlite3-adapter      rails

                   cucumber                              rspec

                   glassfish                              rspec-rails

                   jdbc-mysql                            warbler

                   jdbc-postgres                         webrat

                   jdbc-sqlite3                          ZenTest



Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
Instalando
                          Netbeans

                           netbeans.org



Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
Netbeans + VIM =
                        jVI

                         jvi.sourceforge.net



Monday, March 23, 2009
Monday, March 23, 2009
2
Monday, March 23, 2009
3
Monday, March 23, 2009
Ruby, a linguagem




Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
Quase tudo é um objeto

                         Classes Abertas, Módulos, Mixins

                         Parâmetros flexíveis de métodos

                         Duck Typing: “envio de mensagens”

                               Blocos, Fechamentos

                               IRB: Interpreted Ruby

Monday, March 23, 2009
Quase tudo é um objeto

                         Classes Abertas, Módulos, Mixins

                         Parâmetros flexíveis de métodos

                         Duck Typing: “envio de mensagens”

                               Blocos, Fechamentos

                               IRB: Interpreted Ruby

Monday, March 23, 2009
Quase tudo é um objeto

                         Classes Abertas, Módulos, Mixins

                         Parâmetros flexíveis de métodos

                         Duck Typing: “envio de mensagens”

                               Blocos, Fechamentos

                               IRB: Interpreted Ruby

Monday, March 23, 2009
Quase tudo é um objeto

                         Classes Abertas, Módulos, Mixins

                         Parâmetros flexíveis de métodos

                         Duck Typing: “envio de mensagens”

                               Blocos, Fechamentos

                               IRB: Interpreted Ruby

Monday, March 23, 2009
Quase tudo é um objeto

                         Classes Abertas, Módulos, Mixins

                         Parâmetros flexíveis de métodos

                         Duck Typing: “envio de mensagens”

                               Blocos, Fechamentos

                               IRB: Interpreted Ruby

Monday, March 23, 2009
Quase tudo é um objeto

                         Classes Abertas, Módulos, Mixins

                         Parâmetros flexíveis de métodos

                         Duck Typing: “envio de mensagens”

                               Blocos, Fechamentos

                               IRB: Interpreted Ruby

Monday, March 23, 2009
JRuby, a integração




Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
JIRB = Java IRB

                                   import java

                              isEmpty() == empty?

                              Classes Finais Abertas

                         Anonymous Inner Class = Blocos

                         Conversão automáticos de Tipos

Monday, March 23, 2009
JIRB = Java IRB

                                   import java

                              isEmpty() == empty?

                              Classes Finais Abertas

                         Anonymous Inner Class = Blocos

                         Conversão automáticos de Tipos

Monday, March 23, 2009
JIRB = Java IRB

                                   import java

                              isEmpty() == empty?

                              Classes Finais Abertas

                         Anonymous Inner Class = Blocos

                         Conversão automáticos de Tipos

Monday, March 23, 2009
JIRB = Java IRB

                                   import java

                              isEmpty() == empty?

                              Classes Finais Abertas

                         Anonymous Inner Class = Blocos

                         Conversão automáticos de Tipos

Monday, March 23, 2009
JIRB = Java IRB

                                   import java

                              isEmpty() == empty?

                              Classes Finais Abertas

                         Anonymous Inner Class = Blocos

                         Conversão automáticos de Tipos

Monday, March 23, 2009
JIRB = Java IRB

                                   import java

                              isEmpty() == empty?

                              Classes Finais Abertas

                         Anonymous Inner Class = Blocos

                         Conversão automáticos de Tipos

Monday, March 23, 2009
3
Monday, March 23, 2009
“to be continued ...”




Monday, March 23, 2009
4
Monday, March 23, 2009
Testando Java com
                   Ruby

                              jtestr.codehaus.org
                         github.com/akitaonrails/jtestr

Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
test/unit

                            RSpec

                             dust

                         Expectations

                         Ant, Maven

                           Eclipse

Monday, March 23, 2009
test/unit

                            RSpec

                             dust

                         Expectations

                         Ant, Maven

                           Eclipse

Monday, March 23, 2009
test/unit

                            RSpec

                             dust

                         Expectations

                         Ant, Maven

                           Eclipse

Monday, March 23, 2009
test/unit

                            RSpec

                             dust

                         Expectations

                         Ant, Maven

                           Eclipse

Monday, March 23, 2009
test/unit

                            RSpec

                             dust

                         Expectations

                         Ant, Maven

                           Eclipse

Monday, March 23, 2009
test/unit

                            RSpec

                             dust

                         Expectations

                         Ant, Maven

                           Eclipse

Monday, March 23, 2009
Cucumber, Rspec
                      & cia.

       gem install cucumber rspec rspec-rails webrat hpricot


Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
Netbeans apenas como Editor

                             Terminal - a melhor opção

                            RSpec, melhor suíte de teste

                   Cucumber, melhor teste de aceitação

                         Webrat, mais simples que Selenium

                    Para a próxima: Fixtures vs Factories

Monday, March 23, 2009
Netbeans apenas como Editor

                             Terminal - a melhor opção

                            RSpec, melhor suíte de teste

                   Cucumber, melhor teste de aceitação

                         Webrat, mais simples que Selenium

                    Para a próxima: Fixtures vs Factories

Monday, March 23, 2009
Netbeans apenas como Editor

                             Terminal - a melhor opção

                            RSpec, melhor suíte de teste

                   Cucumber, melhor teste de aceitação

                         Webrat, mais simples que Selenium

                    Para a próxima: Fixtures vs Factories

Monday, March 23, 2009
Netbeans apenas como Editor

                             Terminal - a melhor opção

                            RSpec, melhor suíte de teste

                   Cucumber, melhor teste de aceitação

                         Webrat, mais simples que Selenium

                    Para a próxima: Fixtures vs Factories

Monday, March 23, 2009
Netbeans apenas como Editor

                             Terminal - a melhor opção

                            RSpec, melhor suíte de teste

                   Cucumber, melhor teste de aceitação

                         Webrat, mais simples que Selenium

                    Para a próxima: Fixtures vs Factories

Monday, March 23, 2009
Netbeans apenas como Editor

                             Terminal - a melhor opção

                            RSpec, melhor suíte de teste

                   Cucumber, melhor teste de aceitação

                         Webrat, mais simples que Selenium

                    Para a próxima: Fixtures vs Factories

Monday, March 23, 2009
4
Monday, March 23, 2009
5
Monday, March 23, 2009
JRuby on Rails


                          tomcat, glassfish, jetty, jboss


Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
JRUBY_VERSION


                                       JDBC


                                     Warbler


                              Problema: gems nativas

                         Para a próxima: JNDI, cluster, etc

Monday, March 23, 2009
JRUBY_VERSION


                                       JDBC


                                     Warbler


                              Problema: gems nativas

                         Para a próxima: JNDI, cluster, etc

Monday, March 23, 2009
JRUBY_VERSION


                                       JDBC


                                     Warbler


                              Problema: gems nativas

                         Para a próxima: JNDI, cluster, etc

Monday, March 23, 2009
JRUBY_VERSION


                                       JDBC


                                     Warbler


                              Problema: gems nativas

                         Para a próxima: JNDI, cluster, etc

Monday, March 23, 2009
JRUBY_VERSION


                                       JDBC


                                     Warbler


                              Problema: gems nativas

                         Para a próxima: JNDI, cluster, etc

Monday, March 23, 2009
x mais lento que C++




Monday, March 23, 2009
x mais lento que C++


                         0   50              100
                                                         150
                                                               200
     Python 2


      Ruby 1.9


           Perl

          JRuby

        Python 3

             PHP

        Ruby 1.8.6




Monday, March 23, 2009
5
Monday, March 23, 2009
6
Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
Monday, March 23, 2009
“Especialista de
              uma coisa só é um
              amador em todo o
                   resto.”

Monday, March 23, 2009
Obrigado!
                         akitaonrails.com




Monday, March 23, 2009

Weitere ähnliche Inhalte

Ähnlich wie Palestra no Grupo Sou Java

The Enterprise Strikes Back
The Enterprise Strikes BackThe Enterprise Strikes Back
The Enterprise Strikes BackBurke Libbey
 
Promiscuous Drupal
Promiscuous DrupalPromiscuous Drupal
Promiscuous DrupalJeff Eaton
 
Parsing for Fun and Profit
Parsing for Fun and ProfitParsing for Fun and Profit
Parsing for Fun and ProfitPatchSpace Ltd
 
The Craftsman Developer In An Agile World
The Craftsman Developer In An Agile WorldThe Craftsman Developer In An Agile World
The Craftsman Developer In An Agile WorldOpenAgile Romania
 
High Performance Ruby - E4E Conference 2013
High Performance Ruby - E4E Conference 2013High Performance Ruby - E4E Conference 2013
High Performance Ruby - E4E Conference 2013Charles Nutter
 
When Ruby Meets Java - The Power of Torquebox
When Ruby Meets Java - The Power of TorqueboxWhen Ruby Meets Java - The Power of Torquebox
When Ruby Meets Java - The Power of Torqueboxrockyjaiswal
 
2009, o ano do Ruby on Rails no Brasil - CaelumDay 2009
2009, o ano do Ruby on Rails no Brasil - CaelumDay 20092009, o ano do Ruby on Rails no Brasil - CaelumDay 2009
2009, o ano do Ruby on Rails no Brasil - CaelumDay 2009Caue Guerra
 
Plugin Memcached%20 Study
Plugin Memcached%20 StudyPlugin Memcached%20 Study
Plugin Memcached%20 StudyLiu Lizhi
 
Charla ruby nscodermad
Charla ruby nscodermadCharla ruby nscodermad
Charla ruby nscodermadnscoder_mad
 

Ähnlich wie Palestra no Grupo Sou Java (12)

The Enterprise Strikes Back
The Enterprise Strikes BackThe Enterprise Strikes Back
The Enterprise Strikes Back
 
Promiscuous Drupal
Promiscuous DrupalPromiscuous Drupal
Promiscuous Drupal
 
Parsing for Fun and Profit
Parsing for Fun and ProfitParsing for Fun and Profit
Parsing for Fun and Profit
 
Conférence Tic 09
Conférence Tic 09Conférence Tic 09
Conférence Tic 09
 
Ruby AST Tools
Ruby AST ToolsRuby AST Tools
Ruby AST Tools
 
The Craftsman Developer In An Agile World
The Craftsman Developer In An Agile WorldThe Craftsman Developer In An Agile World
The Craftsman Developer In An Agile World
 
High Performance Ruby - E4E Conference 2013
High Performance Ruby - E4E Conference 2013High Performance Ruby - E4E Conference 2013
High Performance Ruby - E4E Conference 2013
 
When Ruby Meets Java - The Power of Torquebox
When Ruby Meets Java - The Power of TorqueboxWhen Ruby Meets Java - The Power of Torquebox
When Ruby Meets Java - The Power of Torquebox
 
2009, o ano do Ruby on Rails no Brasil - CaelumDay 2009
2009, o ano do Ruby on Rails no Brasil - CaelumDay 20092009, o ano do Ruby on Rails no Brasil - CaelumDay 2009
2009, o ano do Ruby on Rails no Brasil - CaelumDay 2009
 
Memcached
MemcachedMemcached
Memcached
 
Plugin Memcached%20 Study
Plugin Memcached%20 StudyPlugin Memcached%20 Study
Plugin Memcached%20 Study
 
Charla ruby nscodermad
Charla ruby nscodermadCharla ruby nscodermad
Charla ruby nscodermad
 

Mehr von Fabio Akita

Devconf 2019 - São Carlos
Devconf 2019 - São CarlosDevconf 2019 - São Carlos
Devconf 2019 - São CarlosFabio Akita
 
Meetup Nerdzão - English Talk about Languages
Meetup Nerdzão  - English Talk about LanguagesMeetup Nerdzão  - English Talk about Languages
Meetup Nerdzão - English Talk about LanguagesFabio Akita
 
Desmistificando Blockchains p/ Developers - Criciuma Dev Conf 2018
Desmistificando Blockchains p/ Developers - Criciuma Dev Conf 2018Desmistificando Blockchains p/ Developers - Criciuma Dev Conf 2018
Desmistificando Blockchains p/ Developers - Criciuma Dev Conf 2018Fabio Akita
 
Desmistificando Blockchains - 20o Encontro Locaweb SP
Desmistificando Blockchains - 20o Encontro Locaweb SPDesmistificando Blockchains - 20o Encontro Locaweb SP
Desmistificando Blockchains - 20o Encontro Locaweb SPFabio Akita
 
Desmistificando Blockchains - Insiter Goiania
Desmistificando Blockchains - Insiter GoianiaDesmistificando Blockchains - Insiter Goiania
Desmistificando Blockchains - Insiter GoianiaFabio Akita
 
Blockchain em 7 minutos - 7Masters
Blockchain em 7 minutos - 7MastersBlockchain em 7 minutos - 7Masters
Blockchain em 7 minutos - 7MastersFabio Akita
 
Elixir -Tolerância a Falhas para Adultos - GDG Campinas
Elixir  -Tolerância a Falhas para Adultos - GDG CampinasElixir  -Tolerância a Falhas para Adultos - GDG Campinas
Elixir -Tolerância a Falhas para Adultos - GDG CampinasFabio Akita
 
Desmistificando Mitos de Tech Startups - Intercon 2017
Desmistificando Mitos de Tech Startups - Intercon 2017Desmistificando Mitos de Tech Startups - Intercon 2017
Desmistificando Mitos de Tech Startups - Intercon 2017Fabio Akita
 
30 Days to Elixir and Crystal and Back to Ruby
30 Days to Elixir and Crystal and Back to Ruby30 Days to Elixir and Crystal and Back to Ruby
30 Days to Elixir and Crystal and Back to RubyFabio Akita
 
Uma Discussão sobre a Carreira de TI
Uma Discussão sobre a Carreira de TIUma Discussão sobre a Carreira de TI
Uma Discussão sobre a Carreira de TIFabio Akita
 
THE CONF - Opening Keynote
THE CONF - Opening KeynoteTHE CONF - Opening Keynote
THE CONF - Opening KeynoteFabio Akita
 
A Journey through New Languages - Rancho Dev 2017
A Journey through New Languages - Rancho Dev 2017A Journey through New Languages - Rancho Dev 2017
A Journey through New Languages - Rancho Dev 2017Fabio Akita
 
Desmistificando Mitos de Startups - Sebrae - AP
Desmistificando Mitos de Startups - Sebrae - APDesmistificando Mitos de Startups - Sebrae - AP
Desmistificando Mitos de Startups - Sebrae - APFabio Akita
 
A Journey through New Languages - Guru Sorocaba 2017
A Journey through New Languages - Guru Sorocaba 2017A Journey through New Languages - Guru Sorocaba 2017
A Journey through New Languages - Guru Sorocaba 2017Fabio Akita
 
A Journey through New Languages - Insiter 2017
A Journey through New Languages - Insiter 2017A Journey through New Languages - Insiter 2017
A Journey through New Languages - Insiter 2017Fabio Akita
 
A Journey through New Languages - Locaweb Tech Day
A Journey through New Languages - Locaweb Tech DayA Journey through New Languages - Locaweb Tech Day
A Journey through New Languages - Locaweb Tech DayFabio Akita
 
A Journey through new Languages - Intercon 2016
A Journey through new Languages - Intercon 2016A Journey through new Languages - Intercon 2016
A Journey through new Languages - Intercon 2016Fabio Akita
 
Premature Optimization 2.0 - Intercon 2016
Premature Optimization 2.0 - Intercon 2016Premature Optimization 2.0 - Intercon 2016
Premature Optimization 2.0 - Intercon 2016Fabio Akita
 
Conexão Kinghost - Otimização Prematura
Conexão Kinghost - Otimização PrematuraConexão Kinghost - Otimização Prematura
Conexão Kinghost - Otimização PrematuraFabio Akita
 
The Open Commerce Conference - Premature Optimisation: The Root of All Evil
The Open Commerce Conference - Premature Optimisation: The Root of All EvilThe Open Commerce Conference - Premature Optimisation: The Root of All Evil
The Open Commerce Conference - Premature Optimisation: The Root of All EvilFabio Akita
 

Mehr von Fabio Akita (20)

Devconf 2019 - São Carlos
Devconf 2019 - São CarlosDevconf 2019 - São Carlos
Devconf 2019 - São Carlos
 
Meetup Nerdzão - English Talk about Languages
Meetup Nerdzão  - English Talk about LanguagesMeetup Nerdzão  - English Talk about Languages
Meetup Nerdzão - English Talk about Languages
 
Desmistificando Blockchains p/ Developers - Criciuma Dev Conf 2018
Desmistificando Blockchains p/ Developers - Criciuma Dev Conf 2018Desmistificando Blockchains p/ Developers - Criciuma Dev Conf 2018
Desmistificando Blockchains p/ Developers - Criciuma Dev Conf 2018
 
Desmistificando Blockchains - 20o Encontro Locaweb SP
Desmistificando Blockchains - 20o Encontro Locaweb SPDesmistificando Blockchains - 20o Encontro Locaweb SP
Desmistificando Blockchains - 20o Encontro Locaweb SP
 
Desmistificando Blockchains - Insiter Goiania
Desmistificando Blockchains - Insiter GoianiaDesmistificando Blockchains - Insiter Goiania
Desmistificando Blockchains - Insiter Goiania
 
Blockchain em 7 minutos - 7Masters
Blockchain em 7 minutos - 7MastersBlockchain em 7 minutos - 7Masters
Blockchain em 7 minutos - 7Masters
 
Elixir -Tolerância a Falhas para Adultos - GDG Campinas
Elixir  -Tolerância a Falhas para Adultos - GDG CampinasElixir  -Tolerância a Falhas para Adultos - GDG Campinas
Elixir -Tolerância a Falhas para Adultos - GDG Campinas
 
Desmistificando Mitos de Tech Startups - Intercon 2017
Desmistificando Mitos de Tech Startups - Intercon 2017Desmistificando Mitos de Tech Startups - Intercon 2017
Desmistificando Mitos de Tech Startups - Intercon 2017
 
30 Days to Elixir and Crystal and Back to Ruby
30 Days to Elixir and Crystal and Back to Ruby30 Days to Elixir and Crystal and Back to Ruby
30 Days to Elixir and Crystal and Back to Ruby
 
Uma Discussão sobre a Carreira de TI
Uma Discussão sobre a Carreira de TIUma Discussão sobre a Carreira de TI
Uma Discussão sobre a Carreira de TI
 
THE CONF - Opening Keynote
THE CONF - Opening KeynoteTHE CONF - Opening Keynote
THE CONF - Opening Keynote
 
A Journey through New Languages - Rancho Dev 2017
A Journey through New Languages - Rancho Dev 2017A Journey through New Languages - Rancho Dev 2017
A Journey through New Languages - Rancho Dev 2017
 
Desmistificando Mitos de Startups - Sebrae - AP
Desmistificando Mitos de Startups - Sebrae - APDesmistificando Mitos de Startups - Sebrae - AP
Desmistificando Mitos de Startups - Sebrae - AP
 
A Journey through New Languages - Guru Sorocaba 2017
A Journey through New Languages - Guru Sorocaba 2017A Journey through New Languages - Guru Sorocaba 2017
A Journey through New Languages - Guru Sorocaba 2017
 
A Journey through New Languages - Insiter 2017
A Journey through New Languages - Insiter 2017A Journey through New Languages - Insiter 2017
A Journey through New Languages - Insiter 2017
 
A Journey through New Languages - Locaweb Tech Day
A Journey through New Languages - Locaweb Tech DayA Journey through New Languages - Locaweb Tech Day
A Journey through New Languages - Locaweb Tech Day
 
A Journey through new Languages - Intercon 2016
A Journey through new Languages - Intercon 2016A Journey through new Languages - Intercon 2016
A Journey through new Languages - Intercon 2016
 
Premature Optimization 2.0 - Intercon 2016
Premature Optimization 2.0 - Intercon 2016Premature Optimization 2.0 - Intercon 2016
Premature Optimization 2.0 - Intercon 2016
 
Conexão Kinghost - Otimização Prematura
Conexão Kinghost - Otimização PrematuraConexão Kinghost - Otimização Prematura
Conexão Kinghost - Otimização Prematura
 
The Open Commerce Conference - Premature Optimisation: The Root of All Evil
The Open Commerce Conference - Premature Optimisation: The Root of All EvilThe Open Commerce Conference - Premature Optimisation: The Root of All Evil
The Open Commerce Conference - Premature Optimisation: The Root of All Evil
 

Kürzlich hochgeladen

ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 

Kürzlich hochgeladen (20)

ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 

Palestra no Grupo Sou Java

  • 1. Introdução ao Ruby powered by JRuby Monday, March 23, 2009
  • 7. Pequena introdução Instalando o Ambiente Apresentando a Linguagem Testando com Ruby Rails on JRuby Aprendendo Monday, March 23, 2009
  • 8. Pequena introdução Instalando o Ambiente Apresentando a Linguagem Testando com Ruby Rails on JRuby Aprendendo Monday, March 23, 2009
  • 9. Pequena introdução Instalando o Ambiente Apresentando a Linguagem Testando com Ruby Rails on JRuby Aprendendo Monday, March 23, 2009
  • 10. Pequena introdução Instalando o Ambiente Apresentando a Linguagem Testando com Ruby Rails on JRuby Aprendendo Monday, March 23, 2009
  • 11. Pequena introdução Instalando o Ambiente Apresentando a Linguagem Testando com Ruby Rails on JRuby Aprendendo Monday, March 23, 2009
  • 12. Pequena introdução Instalando o Ambiente Apresentando a Linguagem Testando com Ruby Rails on JRuby Aprendendo Monday, March 23, 2009
  • 14. “Matz” 1993 Monday, March 23, 2009
  • 15. “Prag Dave” 2001 Monday, March 23, 2009
  • 16. “DHH” 2004 Monday, March 23, 2009
  • 17. Charles Nutter 2006 Monday, March 23, 2009
  • 20. “Tornar as coisas simples fáceis e as coisas complexas possíveis” Filosofia Ruby Monday, March 23, 2009
  • 22. x mais lento que C++ Monday, March 23, 2009
  • 23. x mais lento que C++ 0 50 100 150 200 Python 2 Ruby 1.9 Perl JRuby Python 3 PHP Ruby 1.8.6 Monday, March 23, 2009
  • 26. Instalando JRuby jruby.codehaus.org Monday, March 23, 2009
  • 30. cd /opt/local wget http://dist.codehaus.org/jruby/1.2.0/ jruby-bin-1.2.0.zip unzip jruby-bin-1.2.0.zip ln -s jruby jruby-bin-1.2.0 mv jruby/ruby/lib/ruby/gems jruby_gems ln -s jruby/ruby/lib/ruby/gems jruby_gems Monday, March 23, 2009
  • 31. cd /opt/local wget http://dist.codehaus.org/jruby/1.2.0/ jruby-bin-1.2.0.zip unzip jruby-bin-1.2.0.zip ln -s jruby jruby-bin-1.2.0 mv jruby/ruby/lib/ruby/gems jruby_gems ln -s jruby/ruby/lib/ruby/gems jruby_gems Monday, March 23, 2009
  • 32. cd /opt/local wget http://dist.codehaus.org/jruby/1.2.0/ jruby-bin-1.2.0.zip unzip jruby-bin-1.2.0.zip ln -s jruby jruby-bin-1.2.0 mv jruby/ruby/lib/ruby/gems jruby_gems ln -s jruby/ruby/lib/ruby/gems jruby_gems Monday, March 23, 2009
  • 33. cd /opt/local wget http://dist.codehaus.org/jruby/1.2.0/ jruby-bin-1.2.0.zip unzip jruby-bin-1.2.0.zip ln -s jruby jruby-bin-1.2.0 mv jruby/ruby/lib/ruby/gems jruby_gems ln -s jruby/ruby/lib/ruby/gems jruby_gems Monday, March 23, 2009
  • 34. cd /opt/local wget http://dist.codehaus.org/jruby/1.2.0/ jruby-bin-1.2.0.zip unzip jruby-bin-1.2.0.zip ln -s jruby jruby-bin-1.2.0 mv jruby/ruby/lib/ruby/gems jruby_gems ln -s jruby/ruby/lib/ruby/gems jruby_gems Monday, March 23, 2009
  • 35. cd /opt/local wget http://dist.codehaus.org/jruby/1.2.0/ jruby-bin-1.2.0.zip unzip jruby-bin-1.2.0.zip ln -s jruby jruby-bin-1.2.0 mv jruby/ruby/lib/ruby/gems jruby_gems ln -s jruby/ruby/lib/ruby/gems jruby_gems Monday, March 23, 2009
  • 37. export JRUBY_HOME=/opt/local/jruby export $JRUBY_HOME/bin:$PATH Monday, March 23, 2009
  • 38. jruby -S gem install ... activerecord-jdbc-adapter jetty-rails activerecord-jdbcmysql-adapter jruby-openssl activerecord-jdbcpostgresql-adapter nifty-generators activerecord-jdbcsqlite3-adapter rails cucumber rspec glassfish rspec-rails jdbc-mysql warbler jdbc-postgres webrat jdbc-sqlite3 ZenTest Monday, March 23, 2009
  • 44. Instalando Netbeans netbeans.org Monday, March 23, 2009
  • 48. Netbeans + VIM = jVI jvi.sourceforge.net Monday, March 23, 2009
  • 52. Ruby, a linguagem Monday, March 23, 2009
  • 56. Quase tudo é um objeto Classes Abertas, Módulos, Mixins Parâmetros flexíveis de métodos Duck Typing: “envio de mensagens” Blocos, Fechamentos IRB: Interpreted Ruby Monday, March 23, 2009
  • 57. Quase tudo é um objeto Classes Abertas, Módulos, Mixins Parâmetros flexíveis de métodos Duck Typing: “envio de mensagens” Blocos, Fechamentos IRB: Interpreted Ruby Monday, March 23, 2009
  • 58. Quase tudo é um objeto Classes Abertas, Módulos, Mixins Parâmetros flexíveis de métodos Duck Typing: “envio de mensagens” Blocos, Fechamentos IRB: Interpreted Ruby Monday, March 23, 2009
  • 59. Quase tudo é um objeto Classes Abertas, Módulos, Mixins Parâmetros flexíveis de métodos Duck Typing: “envio de mensagens” Blocos, Fechamentos IRB: Interpreted Ruby Monday, March 23, 2009
  • 60. Quase tudo é um objeto Classes Abertas, Módulos, Mixins Parâmetros flexíveis de métodos Duck Typing: “envio de mensagens” Blocos, Fechamentos IRB: Interpreted Ruby Monday, March 23, 2009
  • 61. Quase tudo é um objeto Classes Abertas, Módulos, Mixins Parâmetros flexíveis de métodos Duck Typing: “envio de mensagens” Blocos, Fechamentos IRB: Interpreted Ruby Monday, March 23, 2009
  • 66. JIRB = Java IRB import java isEmpty() == empty? Classes Finais Abertas Anonymous Inner Class = Blocos Conversão automáticos de Tipos Monday, March 23, 2009
  • 67. JIRB = Java IRB import java isEmpty() == empty? Classes Finais Abertas Anonymous Inner Class = Blocos Conversão automáticos de Tipos Monday, March 23, 2009
  • 68. JIRB = Java IRB import java isEmpty() == empty? Classes Finais Abertas Anonymous Inner Class = Blocos Conversão automáticos de Tipos Monday, March 23, 2009
  • 69. JIRB = Java IRB import java isEmpty() == empty? Classes Finais Abertas Anonymous Inner Class = Blocos Conversão automáticos de Tipos Monday, March 23, 2009
  • 70. JIRB = Java IRB import java isEmpty() == empty? Classes Finais Abertas Anonymous Inner Class = Blocos Conversão automáticos de Tipos Monday, March 23, 2009
  • 71. JIRB = Java IRB import java isEmpty() == empty? Classes Finais Abertas Anonymous Inner Class = Blocos Conversão automáticos de Tipos Monday, March 23, 2009
  • 73. “to be continued ...” Monday, March 23, 2009
  • 75. Testando Java com Ruby jtestr.codehaus.org github.com/akitaonrails/jtestr Monday, March 23, 2009
  • 79. test/unit RSpec dust Expectations Ant, Maven Eclipse Monday, March 23, 2009
  • 80. test/unit RSpec dust Expectations Ant, Maven Eclipse Monday, March 23, 2009
  • 81. test/unit RSpec dust Expectations Ant, Maven Eclipse Monday, March 23, 2009
  • 82. test/unit RSpec dust Expectations Ant, Maven Eclipse Monday, March 23, 2009
  • 83. test/unit RSpec dust Expectations Ant, Maven Eclipse Monday, March 23, 2009
  • 84. test/unit RSpec dust Expectations Ant, Maven Eclipse Monday, March 23, 2009
  • 85. Cucumber, Rspec & cia. gem install cucumber rspec rspec-rails webrat hpricot Monday, March 23, 2009
  • 89. Netbeans apenas como Editor Terminal - a melhor opção RSpec, melhor suíte de teste Cucumber, melhor teste de aceitação Webrat, mais simples que Selenium Para a próxima: Fixtures vs Factories Monday, March 23, 2009
  • 90. Netbeans apenas como Editor Terminal - a melhor opção RSpec, melhor suíte de teste Cucumber, melhor teste de aceitação Webrat, mais simples que Selenium Para a próxima: Fixtures vs Factories Monday, March 23, 2009
  • 91. Netbeans apenas como Editor Terminal - a melhor opção RSpec, melhor suíte de teste Cucumber, melhor teste de aceitação Webrat, mais simples que Selenium Para a próxima: Fixtures vs Factories Monday, March 23, 2009
  • 92. Netbeans apenas como Editor Terminal - a melhor opção RSpec, melhor suíte de teste Cucumber, melhor teste de aceitação Webrat, mais simples que Selenium Para a próxima: Fixtures vs Factories Monday, March 23, 2009
  • 93. Netbeans apenas como Editor Terminal - a melhor opção RSpec, melhor suíte de teste Cucumber, melhor teste de aceitação Webrat, mais simples que Selenium Para a próxima: Fixtures vs Factories Monday, March 23, 2009
  • 94. Netbeans apenas como Editor Terminal - a melhor opção RSpec, melhor suíte de teste Cucumber, melhor teste de aceitação Webrat, mais simples que Selenium Para a próxima: Fixtures vs Factories Monday, March 23, 2009
  • 97. JRuby on Rails tomcat, glassfish, jetty, jboss Monday, March 23, 2009
  • 101. JRUBY_VERSION JDBC Warbler Problema: gems nativas Para a próxima: JNDI, cluster, etc Monday, March 23, 2009
  • 102. JRUBY_VERSION JDBC Warbler Problema: gems nativas Para a próxima: JNDI, cluster, etc Monday, March 23, 2009
  • 103. JRUBY_VERSION JDBC Warbler Problema: gems nativas Para a próxima: JNDI, cluster, etc Monday, March 23, 2009
  • 104. JRUBY_VERSION JDBC Warbler Problema: gems nativas Para a próxima: JNDI, cluster, etc Monday, March 23, 2009
  • 105. JRUBY_VERSION JDBC Warbler Problema: gems nativas Para a próxima: JNDI, cluster, etc Monday, March 23, 2009
  • 106. x mais lento que C++ Monday, March 23, 2009
  • 107. x mais lento que C++ 0 50 100 150 200 Python 2 Ruby 1.9 Perl JRuby Python 3 PHP Ruby 1.8.6 Monday, March 23, 2009
  • 117. “Especialista de uma coisa só é um amador em todo o resto.” Monday, March 23, 2009
  • 118. Obrigado! akitaonrails.com Monday, March 23, 2009