ruby para programadores java
DESCRIPTION
Apresentação de Maio de 2011 sobre como programadores java podem aprender ruby mais fácil e como podem continuar utilizando recursos interessantes da plataforma java ao mesmo tempoTRANSCRIPT
![Page 1: Ruby para programadores java](https://reader034.vdocuments.mx/reader034/viewer/2022042614/556204cdd8b42ae04e8b59ac/html5/thumbnails/1.jpg)
O básico para entender e escrever código ruby
![Page 2: Ruby para programadores java](https://reader034.vdocuments.mx/reader034/viewer/2022042614/556204cdd8b42ae04e8b59ac/html5/thumbnails/2.jpg)
http://www.urubatan.com.br
Uma linguagem dinâmica, open source com foco na simplicidade e na produtividade. Tem uma sintaxe elegante de leitura natural e fácil
escrita.
![Page 3: Ruby para programadores java](https://reader034.vdocuments.mx/reader034/viewer/2022042614/556204cdd8b42ae04e8b59ac/html5/thumbnails/3.jpg)
http://www.urubatan.com.br
Um framework pra desenvolvimento de aplicações Web extremamente flexível e produtivo, e o único framework que eu conheço que tem a felicidade dos desenvolvedores como um dos objetivos!
![Page 5: Ruby para programadores java](https://reader034.vdocuments.mx/reader034/viewer/2022042614/556204cdd8b42ae04e8b59ac/html5/thumbnails/5.jpg)
http://www.urubatan.com.br
require 'java'
@frame = javax.swing.JFrame.new "Old Way, using only SWING from Ruby"
@frame.add(@lbl1 = javax.swing.JLabel.new("Master Title"))
@frame.pack
@frame.visible = true
![Page 7: Ruby para programadores java](https://reader034.vdocuments.mx/reader034/viewer/2022042614/556204cdd8b42ae04e8b59ac/html5/thumbnails/7.jpg)
http://www.urubatan.com.br
JRuby on Rails – Acessando a infra estrutura Java já existente na empresa
Scripts Ruby para automação de tarefas acessando servidores de aplicação Java, EJBs, ...
![Page 8: Ruby para programadores java](https://reader034.vdocuments.mx/reader034/viewer/2022042614/556204cdd8b42ae04e8b59ac/html5/thumbnails/8.jpg)
http://www.urubatan.com.br
metodo1(); metodo2()
soma = 8\+ 5
soma = 8+ 5
![Page 9: Ruby para programadores java](https://reader034.vdocuments.mx/reader034/viewer/2022042614/556204cdd8b42ae04e8b59ac/html5/thumbnails/9.jpg)
http://www.urubatan.com.br
# Comentário de linha
=beginComentário em bloco=end
![Page 10: Ruby para programadores java](https://reader034.vdocuments.mx/reader034/viewer/2022042614/556204cdd8b42ae04e8b59ac/html5/thumbnails/10.jpg)
http://www.urubatan.com.br
123 # 123 4_123.45 # 4123.45 1.2e-3 # 0.0012 0xffff # hexadecimal 0b01011 # binário 0377 # octal ?a # valor em ASCII do caractere ?\C-a # Control-a ?\M-a # Meta-a ?\M-\C-a # Meta-Control-a
![Page 11: Ruby para programadores java](https://reader034.vdocuments.mx/reader034/viewer/2022042614/556204cdd8b42ae04e8b59ac/html5/thumbnails/11.jpg)
http://www.urubatan.com.br
„String sem interpolação‟
“String com interpolação #{variável}”
%q{String sem interpolação}
%Q{String com interpolação #{variável}}
<<_END_Here Doc com interpolação de #{variáveis}_END_
![Page 12: Ruby para programadores java](https://reader034.vdocuments.mx/reader034/viewer/2022042614/556204cdd8b42ae04e8b59ac/html5/thumbnails/12.jpg)
http://www.urubatan.com.br
1.nil? # false
nil.nil? # true
1.3.class # Float
1.is_a? Float # false
'0'.to_i + 1 # 1
Float.class # Class
![Page 13: Ruby para programadores java](https://reader034.vdocuments.mx/reader034/viewer/2022042614/556204cdd8b42ae04e8b59ac/html5/thumbnails/13.jpg)
http://www.urubatan.com.br
$var # variável global
@@var # Variáveis de classe
@var # Variáveis de instância
var # variáveis local
:var # símbolo
[OtherClass::]VAR # constante
![Page 14: Ruby para programadores java](https://reader034.vdocuments.mx/reader034/viewer/2022042614/556204cdd8b42ae04e8b59ac/html5/thumbnails/14.jpg)
http://www.urubatan.com.br
self # objeto dono do método corrente.
nil # objeto da classe NilClass semelhanteao null e responde como um false.
__FILE__ # nome do arquivo fonte atual.
__LINE__ # linha do arquivo fonte atual.
![Page 15: Ruby para programadores java](https://reader034.vdocuments.mx/reader034/viewer/2022042614/556204cdd8b42ae04e8b59ac/html5/thumbnails/15.jpg)
http://www.urubatan.com.br
hash = {1 => 'one', 2 => 'two', 3 => 'three'}
array = [„um‟, 2]
arayDeString = %w{um dois três 4}
nums = (0..9).to_a # num = [0, 1, 2, 3, 4, 5,6, 7, 8, 9]
![Page 16: Ruby para programadores java](https://reader034.vdocuments.mx/reader034/viewer/2022042614/556204cdd8b42ae04e8b59ac/html5/thumbnails/16.jpg)
http://www.urubatan.com.br
('A' .. 'Z').each { |char| puts char }
('A' .. 'Z').each_with_index { |char, index| puts ”#{char} at #{index}” }
5.times doputs 'hello'
end
![Page 18: Ruby para programadores java](https://reader034.vdocuments.mx/reader034/viewer/2022042614/556204cdd8b42ae04e8b59ac/html5/thumbnails/18.jpg)
http://www.urubatan.com.br
def metodo(primeiro = 1, segundo = [], terceiro = {})# implementação
end
class Abcdef initialize(param1)@param1 = param1endend
![Page 19: Ruby para programadores java](https://reader034.vdocuments.mx/reader034/viewer/2022042614/556204cdd8b42ae04e8b59ac/html5/thumbnails/19.jpg)
http://www.urubatan.com.br
def assert_equal(expected, actual)
if expected != actual
"FAILURE!“
else
"OK!“
end
end
![Page 20: Ruby para programadores java](https://reader034.vdocuments.mx/reader034/viewer/2022042614/556204cdd8b42ae04e8b59ac/html5/thumbnails/20.jpg)
http://www.urubatan.com.br
if <condition><statements>
elsif <condition><statements>
else<statements>
end
unless <condition><statement>
end
<expression> if <condition1><expression> unless <condition1>
![Page 21: Ruby para programadores java](https://reader034.vdocuments.mx/reader034/viewer/2022042614/556204cdd8b42ae04e8b59ac/html5/thumbnails/21.jpg)
http://www.urubatan.com.br
case foowhen <condition1><statements>
when <condition2><statements>
else<statements>
end
![Page 22: Ruby para programadores java](https://reader034.vdocuments.mx/reader034/viewer/2022042614/556204cdd8b42ae04e8b59ac/html5/thumbnails/22.jpg)
http://www.urubatan.com.br
begin
<statements>
rescue FooError => e
<statements>
rescue BazError => e2
<statements>
rescue
<statements>
end
![Page 23: Ruby para programadores java](https://reader034.vdocuments.mx/reader034/viewer/2022042614/556204cdd8b42ae04e8b59ac/html5/thumbnails/23.jpg)
http://www.urubatan.com.br
/expressão/
%r{expressão}
“teste” =~ /expressao/
![Page 25: Ruby para programadores java](https://reader034.vdocuments.mx/reader034/viewer/2022042614/556204cdd8b42ae04e8b59ac/html5/thumbnails/25.jpg)
http://www.urubatan.com.br
http://www.ruby-lang.org
http://www.jruby.org
http://vitorpamplona.com/wiki/Ruby%20para
%20Programadores%20Java – Thanks!
http://www.gururs.org/
Profligacy