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 DigaOiputs "Olá Mundo IronRuby!"    endend

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 Wpfjanela = Wpf::Window.newjanela.Title = 'WPF com IronRuby'janela.content = Wpf::TextBlock.newjanela.content.text = "Janela WPF usando IronRuby!"janela.content.font_size = 60app = Application.newapp.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\ironrubyPara 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