Vinicius Quaiato

{tecnologia, conceitos, negócios, idéias, práticas, .NET, ruby, osx, ios e algo mais}

IronRuby: Rodando Ruby dentro do .NET


O IronRuby é um port da linguagem Ruby para ser executada juntamente com o .Net Framework.Atualmente o IronRuby está em release candidate(versão 1.0 - RC1), e em algum tempo devemos ter a versão oficial.A idéia aqui não é descrever em pormenores os detalhes da linguagem Ruby, pois inúmeras referências podem ser encontradas na web: Ruby on Br é uma delas.Vou demonstrar como começar a utilizar o IronRuby juntamente com as bibliotecas do .Net e como produzir algum código.Vamos iniciar instalando o IronRuby, e para isso faça o download no site oficial do Ironruby no CodePlex aqui. Eu utilizei a versão Windows Installer. Execute este instalador após o download, ele irá extrair os arquivos para uma pasta especificada.Assim como a maioria das linguagens dinâmicas o IronRuby possui um console interativo, onde podemos escrever código e testar seu uso. E é desta forma que trabalharemos neste primeiro momento.Execute o console do IronRuby, que deve ser encontrado na [pasta de instalação]\bin\ir.exe.Você deverá ver uma tela semelhante a esta:IronRuby ConsoleAgora já podemos começar a escrever nosso código Ruby/IronRuby.Como nosso primeiro código, vamos criar uma classe que terá apenas um método, um famoso Olá Mundo:

class OlaIronRuby
  def DigaOi
    puts "Olá Mundo IronRuby!"
  end
end

Quando digitarmos esse código no console do IronRuby esta classe estará disponível para uso, e a utilizaremos assim:

instancia = OlaIronRuby.new

E fazemos a chamada para o método assim:

instancia.DigaOi

Abaixo vocês conferem todo o código no console do IronRuby:Criando instancia de classe no IronRubyAgora vamos criar uma nova classe que irá trabalhar com bibliotecas do framework. Para referenciarmos um assembly no console, vamos utilizar o require ‘nome do assembly’, como pode ser visto no código abaixo, onde utilizamos o WindowsForms.MessageBox para exibir uma mensagem usando o IronRuby:

require 'System.Windows.Forms'
System::Windows::Forms::MessageBox.show "Olá MessageBox!"

E o resultado podemos ver aqui:Usando MessageBox com IronRubyPodemos ainda criar aplicações WPF por exemplo. Para isso vamos digitar nosso código em um arquivo e salvá-lo como WpfIronRuby.rb, o código pode ser visto abaixo:

require 'wpf'
include Wpf

janela = Wpf::Window.new
janela.Title = 'WPF com IronRuby'
janela.content = Wpf::TextBlock.new
janela.content.text = "Janela WPF usando IronRuby!"
janela.content.font_size = 60

app = Application.new
app.run janela

Para este código funcionar eu copiei o arquivo wpf.rb da pasta [instalação do ironruby]\Samples\Tutorial\app\wpf.rb para _[instalação do ironruby]\Lib\ironruby_Para executar a aplicação eu abri o command do windows e naveguei a até a pasta onde salvei o arquivo, no meu caso o Desktop e digitei: ir.exe WpfIronRuby.rb como pode ser visto na imagem abaixo:

Rodando aplicação Wpf com IronRuby

Bom galera, é isso.O ironRuby ainda está saindo do forno, e com certeza será(e já é) uma grande soma para o .Net Framework.Qualquer dúvida, mail-me ou comentem.

Abraços, Vinicius Quaiato.

Voltar

Fork me on GitHub