Olá pessoal que está trabalhando com Ruby, tenho algumas perguntas…
Vocês utilizam Ruby ou JRuby?
Quem utiliza JRuby, é estável? Posso usar sem medo de ser feliz?
Quem utiliza JRuby, consegue acessar classes Java e vice versa de maneira simples? Tem alguma API pra fazer isso?
Qual IDE vocês utilizam? Paga ou free?
Trabalham com Ruby profissionalmente? Ou apenas por diversão?
Obrigado
Ola,
Bom, eu comecei a estudar Ruby, mais especificamente JRuby, ele tem uma ótima integração com classes Java, que foi a principal consideração na prospecção para scripting, tem uma forma padrão de integração com a plataforma Java, e tem uma documentação/comunidade boa.
Para programar eu estou usando o eclipse, tem um plugin para o Ruby, mas vc tem que baixar o interpretador no site e configurar o eclipse para acessar ele, é muito bom.
[quote=rogelgarcia]Olá pessoal que está trabalhando com Ruby, tenho algumas perguntas…
Vocês utilizam Ruby ou JRuby?
Quem utiliza JRuby, é estável? Posso usar sem medo de ser feliz?
Quem utiliza JRuby, consegue acessar classes Java e vice versa de maneira simples? Tem alguma API pra fazer isso?
Qual IDE vocês utilizam? Paga ou free?
Trabalham com Ruby profissionalmente? Ou apenas por diversão?
Obrigado[/quote]
o Redcar é um bom editor para se trabalhar com Ruby, JRuby, porém editor não IDE, acho o suporte das ides não é muito bom para linguagens dinamicas.
Normalmente mecho com Ruby, mas já mechi com JRuby sem problemas.
JRuby acessar classes Java = Fácil - basta usar por exemplo javax.swing.JTextField.new
Java acessar codigo JRuby = Trabalhoso, complexo, chato, http://blog.rollingwithcode.com/2009/07/java-scriptengine.html
No momento só por diversão
Ok pessoal… obrigado pelas respostas!
rod
Abril 13, 2010, 11:11am
#5
Eu tenho um exemplo de jruby+swing no github.
Veja se te ajuda em algo.
[quote=rlazoti]Eu tenho um exemplo de jruby+swing no github.
Veja se te ajuda em algo.
http://github.com/rlazoti/jruby-swing-lookandfeel[/quote]
Legal cara… a integraçao é bem simples mesmo… acesso direto…
Esse tipo de construcao
@button_close.add_action_listener do |event|
option = JOptionPane::show_confirm_dialog( self, "Close application?", "Question", JOptionPane::YES_NO_OPTION )
if ( option == JOptionPane::YES_OPTION )
self.dispose
end
end
Em Java vc usaria uma classe anonima, que implementa uma interface…
Como foi feito para usar isso no estilo Ruby??
A integraçao com java já dá o estilo ruby para interfaces de apenas um método??? Ou isso foi implementado apenas para as interfaces do swing??
Esse método add_action_listener de onde veio??
(num sei se deu pra entender a minha pergunta)
o JRuby converte os nomes do formato java CamelCase para o formato Ruby camel_case
mais se não me engano vc ainda tem os metodos no formato java disponiveis.
Certo… mas nessa conversão… a interface com um método é convertida tb??
Funcionaria se eu criasse uma interface com um método apenas? Usar o formato ruby?
[quote=rogelgarcia]Certo… mas nessa conversão… a interface com um método é convertida tb??
Funcionaria se eu criasse uma interface com um método apenas? Usar o formato ruby?[/quote]
Em classe. No Ruby não existem interfaces
vc tem que implementar uma classe que extenda a AcionListener ou so implementaer o metodo action_performed do ActionListener (sem herdar nada)
que deve funcionar.
Abdon
Abril 13, 2010, 1:02pm
#10
rogelgarcia:
Em Java vc usaria uma classe anonima, que implementa uma interface…
Como foi feito para usar isso no estilo Ruby??
Em ruby vc utiliza as interfaces do java como se fosse um mixins , que vc mixa utilizando o trexo abaixo
include ActionListener
depois vc implementa actionPerformed normalmente
actionPerformed(e)
case e.source
when @seuItem
end
end
Aqui tem exemplo desta implementação
[quote=ovelha][quote=rogelgarcia]
Em Java vc usaria uma classe anonima, que implementa uma interface…
Como foi feito para usar isso no estilo Ruby??
[/quote]
Em ruby vc utiliza as interfaces do java como se fosse um mixins , que vc mixa utilizando o trexo abaixo
include ActionListener
depois vc implementa actionPerformed normalmente
actionPerformed(e)
case e.source
when @seuItem
end
end
Aqui tem exemplo desta implementação
http://github.com/akitaonrails/jruby_calculator_demo/blob/master/calculator.rb[/quote]
Por ser o Fabio Akita, esse codigo ta bem feiinho hein. esse esquema de tratar o source ai é foda.
Abdon
Abril 13, 2010, 1:20pm
#12
Este codigo é um port deste: http://github.com/akitaonrails/jruby_calculator_demo/blob/master/Calculator.java
Agora se isto é feio ou bonito eu não sei não tenho muita pratica com swing
Ruby.
Textmate (paga).
Recomento o JEdit (free, Linux, Win), embora a maioria goste do Gedit (Linux), eu não gosto rs
Profissionalmente.
[]s