+ All Categories
Home > Technology > Palestra no Grupo Sou Java

Palestra no Grupo Sou Java

Date post: 12-Nov-2014
Category:
Upload: fabio-akita
View: 4,854 times
Download: 0 times
Share this document with a friend
Description:
Palestra sobre como aproveitar o poder de Ruby integrado à excelente tecnologia da plataforma Java. Especialmente voltado ao assunto de TDD/BDD, testes, Cucumber, RSpec.
Popular Tags:
118
Introdução ao Ruby powered by JRuby Monday, March 23, 2009
Transcript
Page 1: Palestra no Grupo Sou Java

Introdução ao Rubypowered by JRuby

Monday, March 23, 2009

Page 2: Palestra no Grupo Sou Java

AkitaOnRails.com

Monday, March 23, 2009

Page 3: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 4: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 5: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 6: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 7: Palestra no Grupo Sou Java

Pequena introdução

Instalando o Ambiente

Apresentando a Linguagem

Testando com Ruby

Rails on JRuby

Aprendendo

Monday, March 23, 2009

Page 8: Palestra no Grupo Sou Java

Pequena introdução

Instalando o Ambiente

Apresentando a Linguagem

Testando com Ruby

Rails on JRuby

Aprendendo

Monday, March 23, 2009

Page 9: Palestra no Grupo Sou Java

Pequena introdução

Instalando o Ambiente

Apresentando a Linguagem

Testando com Ruby

Rails on JRuby

Aprendendo

Monday, March 23, 2009

Page 10: Palestra no Grupo Sou Java

Pequena introdução

Instalando o Ambiente

Apresentando a Linguagem

Testando com Ruby

Rails on JRuby

Aprendendo

Monday, March 23, 2009

Page 11: Palestra no Grupo Sou Java

Pequena introdução

Instalando o Ambiente

Apresentando a Linguagem

Testando com Ruby

Rails on JRuby

Aprendendo

Monday, March 23, 2009

Page 12: Palestra no Grupo Sou Java

Pequena introdução

Instalando o Ambiente

Apresentando a Linguagem

Testando com Ruby

Rails on JRuby

Aprendendo

Monday, March 23, 2009

Page 13: Palestra no Grupo Sou Java

1Monday, March 23, 2009

Page 14: Palestra no Grupo Sou Java

1993

“Matz”

Monday, March 23, 2009

Page 15: Palestra no Grupo Sou Java

2001

“Prag Dave”

Monday, March 23, 2009

Page 16: Palestra no Grupo Sou Java

2004

“DHH”

Monday, March 23, 2009

Page 17: Palestra no Grupo Sou Java

2006

Charles Nutter

Monday, March 23, 2009

Page 18: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 19: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 20: Palestra no Grupo Sou Java

“Tornar as coisas simples fáceis e as coisas

complexas possíveis”

Filosofia Ruby

Monday, March 23, 2009

Page 21: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 22: Palestra no Grupo Sou Java

x mais lento que C++

Monday, March 23, 2009

Page 23: Palestra no Grupo Sou Java

0 50 100150

200

Python 2

Ruby 1.9

Perl

JRuby

Python 3

PHP

Ruby 1.8.6

x mais lento que C++

Monday, March 23, 2009

Page 24: Palestra no Grupo Sou Java

1Monday, March 23, 2009

Page 25: Palestra no Grupo Sou Java

2Monday, March 23, 2009

Page 26: Palestra no Grupo Sou Java

Instalando JRuby

jruby.codehaus.org

Monday, March 23, 2009

Page 27: Palestra no Grupo Sou Java

dist.codehaus.org/jrubyMonday, March 23, 2009

Page 28: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 30: Palestra no Grupo Sou Java

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

Page 31: Palestra no Grupo Sou Java

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

Page 32: Palestra no Grupo Sou Java

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

Page 33: Palestra no Grupo Sou Java

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

Page 34: Palestra no Grupo Sou Java

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

Page 35: Palestra no Grupo Sou Java

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

Page 36: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 37: Palestra no Grupo Sou Java

export JRUBY_HOME=/opt/local/jruby

export $JRUBY_HOME/bin:$PATH

Monday, March 23, 2009

Page 38: Palestra no Grupo Sou Java

activerecord-jdbc-adapter

activerecord-jdbcmysql-adapter

activerecord-jdbcpostgresql-adapter

activerecord-jdbcsqlite3-adapter

cucumber

glassfish

jdbc-mysql

jdbc-postgres

jdbc-sqlite3

jetty-rails

jruby-openssl

nifty-generators

rails

rspec

rspec-rails

warbler

webrat

ZenTest

jruby -S gem install ...

Monday, March 23, 2009

Page 39: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 40: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 41: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 42: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 43: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 44: Palestra no Grupo Sou Java

Instalando Netbeans

netbeans.org

Monday, March 23, 2009

Page 45: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 46: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 47: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 48: Palestra no Grupo Sou Java

Netbeans + VIM = jVI

jvi.sourceforge.net

Monday, March 23, 2009

Page 49: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 50: Palestra no Grupo Sou Java

2Monday, March 23, 2009

Page 51: Palestra no Grupo Sou Java

3Monday, March 23, 2009

Page 52: Palestra no Grupo Sou Java

Ruby, a linguagem

Monday, March 23, 2009

Page 53: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 54: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 55: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 56: Palestra no Grupo Sou Java

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

Page 57: Palestra no Grupo Sou Java

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

Page 58: Palestra no Grupo Sou Java

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

Page 59: Palestra no Grupo Sou Java

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

Page 60: Palestra no Grupo Sou Java

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

Page 61: Palestra no Grupo Sou Java

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

Page 62: Palestra no Grupo Sou Java

JRuby, a integração

Monday, March 23, 2009

Page 63: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 64: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 65: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 66: Palestra no Grupo Sou Java

JIRB = Java IRB

import java

isEmpty() == empty?

Classes Finais Abertas

Anonymous Inner Class = Blocos

Conversão automáticos de Tipos

Monday, March 23, 2009

Page 67: Palestra no Grupo Sou Java

JIRB = Java IRB

import java

isEmpty() == empty?

Classes Finais Abertas

Anonymous Inner Class = Blocos

Conversão automáticos de Tipos

Monday, March 23, 2009

Page 68: Palestra no Grupo Sou Java

JIRB = Java IRB

import java

isEmpty() == empty?

Classes Finais Abertas

Anonymous Inner Class = Blocos

Conversão automáticos de Tipos

Monday, March 23, 2009

Page 69: Palestra no Grupo Sou Java

JIRB = Java IRB

import java

isEmpty() == empty?

Classes Finais Abertas

Anonymous Inner Class = Blocos

Conversão automáticos de Tipos

Monday, March 23, 2009

Page 70: Palestra no Grupo Sou Java

JIRB = Java IRB

import java

isEmpty() == empty?

Classes Finais Abertas

Anonymous Inner Class = Blocos

Conversão automáticos de Tipos

Monday, March 23, 2009

Page 71: Palestra no Grupo Sou Java

JIRB = Java IRB

import java

isEmpty() == empty?

Classes Finais Abertas

Anonymous Inner Class = Blocos

Conversão automáticos de Tipos

Monday, March 23, 2009

Page 72: Palestra no Grupo Sou Java

3Monday, March 23, 2009

Page 73: Palestra no Grupo Sou Java

“to be continued ...”

Monday, March 23, 2009

Page 74: Palestra no Grupo Sou Java

4Monday, March 23, 2009

Page 75: Palestra no Grupo Sou Java

Testando Java com Ruby

jtestr.codehaus.org

github.com/akitaonrails/jtestr

Monday, March 23, 2009

Page 76: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 77: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 78: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 79: Palestra no Grupo Sou Java

test/unit

RSpec

dust

Expectations

Ant, Maven

Eclipse

Monday, March 23, 2009

Page 80: Palestra no Grupo Sou Java

test/unit

RSpec

dust

Expectations

Ant, Maven

Eclipse

Monday, March 23, 2009

Page 81: Palestra no Grupo Sou Java

test/unit

RSpec

dust

Expectations

Ant, Maven

Eclipse

Monday, March 23, 2009

Page 82: Palestra no Grupo Sou Java

test/unit

RSpec

dust

Expectations

Ant, Maven

Eclipse

Monday, March 23, 2009

Page 83: Palestra no Grupo Sou Java

test/unit

RSpec

dust

Expectations

Ant, Maven

Eclipse

Monday, March 23, 2009

Page 84: Palestra no Grupo Sou Java

test/unit

RSpec

dust

Expectations

Ant, Maven

Eclipse

Monday, March 23, 2009

Page 85: Palestra no Grupo Sou Java

Cucumber, Rspec& cia.

gem install cucumber rspec rspec-rails webrat hpricot

Monday, March 23, 2009

Page 86: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 87: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 88: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 89: Palestra no Grupo Sou Java

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

Page 90: Palestra no Grupo Sou Java

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

Page 91: Palestra no Grupo Sou Java

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

Page 92: Palestra no Grupo Sou Java

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

Page 93: Palestra no Grupo Sou Java

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

Page 94: Palestra no Grupo Sou Java

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

Page 95: Palestra no Grupo Sou Java

4Monday, March 23, 2009

Page 96: Palestra no Grupo Sou Java

5Monday, March 23, 2009

Page 97: Palestra no Grupo Sou Java

JRuby on Rails

tomcat, glassfish, jetty, jboss

Monday, March 23, 2009

Page 98: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 99: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 100: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 101: Palestra no Grupo Sou Java

JRUBY_VERSION

JDBC

Warbler

Problema: gems nativas

Para a próxima: JNDI, cluster, etc

Monday, March 23, 2009

Page 102: Palestra no Grupo Sou Java

JRUBY_VERSION

JDBC

Warbler

Problema: gems nativas

Para a próxima: JNDI, cluster, etc

Monday, March 23, 2009

Page 103: Palestra no Grupo Sou Java

JRUBY_VERSION

JDBC

Warbler

Problema: gems nativas

Para a próxima: JNDI, cluster, etc

Monday, March 23, 2009

Page 104: Palestra no Grupo Sou Java

JRUBY_VERSION

JDBC

Warbler

Problema: gems nativas

Para a próxima: JNDI, cluster, etc

Monday, March 23, 2009

Page 105: Palestra no Grupo Sou Java

JRUBY_VERSION

JDBC

Warbler

Problema: gems nativas

Para a próxima: JNDI, cluster, etc

Monday, March 23, 2009

Page 106: Palestra no Grupo Sou Java

x mais lento que C++

Monday, March 23, 2009

Page 107: Palestra no Grupo Sou Java

0 50 100150

200

Python 2

Ruby 1.9

Perl

JRuby

Python 3

PHP

Ruby 1.8.6

x mais lento que C++

Monday, March 23, 2009

Page 108: Palestra no Grupo Sou Java

5Monday, March 23, 2009

Page 109: Palestra no Grupo Sou Java

6Monday, March 23, 2009

Page 110: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 111: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 112: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 113: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 114: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 115: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 116: Palestra no Grupo Sou Java

Monday, March 23, 2009

Page 117: Palestra no Grupo Sou Java

“Especialista de uma coisa só é um amador em todo o

resto.”

Monday, March 23, 2009

Page 118: Palestra no Grupo Sou Java

Obrigado!akitaonrails.com

Monday, March 23, 2009


Recommended