MacRuby
Publicado por Vinicius Manhães Teles há 3 meses.
Você gosta da interface gráfica dos Macs? Quem não gosta, né? Ela é um dos pontos altos da plataforma Macintosh, bem como do iPhone. Tudo viabilizado, em grande parte, por uma tecnologia chamada Cocoa.
No Mac, é possível criar interfaces gráficas em Cocoa, facilmente, utilizando o Interface Builder. Basta arrastar componentes de um lado para o outro, indicar ações e estabelecer conexões com o código. Ah sim, o código é implementado em Objective-C.
Objective-C é uma linguagem orientada a objetos que se aproxima bastante das características de Smalltalk. É uma linguagem com conceitos muito interessantes, porém bem verbosa. E pode representar uma barreira razoável para aqueles que gostariam de implementar aplicativos desktop no Mac, ou mesmo aplicativos no iPhone, especialmente se compararmos a outras linguagens como Ruby.
Pois Ruby é uma linguagem que foi feita com o objetivo de facilitar a vida do programador. É fácil, muito simples, extremamente expressiva e, de um modo geral, adorada por aqueles que a utilizam, incluindo eu mesmo. :-)
Então, de um lado temos uma tecnologia excepcional para interfaces gráficas, chamada Cocoa e de outro uma linguagem excelente chamada Ruby. Não seria ótimo se pudéssemos juntar as duas e ter o melhor dos dois mundos? Bem, isso já é possível há algum tempo usando, por exemplo, o RubyCocoa, que faz uma ponte entre Ruby e Objective-C. Entretanto, atualmente há uma opção ainda melhor chamada MacRuby.
MacRuby é uma versão do Ruby 1.9, portada para rodar diretamente sobre tecnologias que formam o core do Mac OS X tais como o runtime do Objective-C e o garbage collector, entre outros. A ideia é poder criar aplicações desktop no Mac OS X, sem sacrificar o desempenho, usando todos os benefícios do Ruby. Ainda está em desenvolvimento, mas o que está pronto já faz muito e o projeto como um todo é extremamente promissor.
Nestes últimos dias implementei uma pequena funcionalidade usando MacRuby e Cocoa. É algo útil para nosso dia a dia, embora bem básico, com o objetivo de configurar novos domínios DNS do Slicehost, que é onde hospedamos nossos sites. Irei disponibilizar o código no GitHub em breve.
Achei muito fácil fazer a implementação usando Cocoa e MacRuby, de modo que pude comprovar que o propósito do projeto MacRuby está sendo cumprido, ao menos naquilo que usei até o momento. Estou muito empolgado com tudo o que é possível fazer usando MacRuby, sobretudo com a agilidade e a facilidade de desenvolver dessa forma. Sendo assim, gostaria de recomendar aos interessados que deem uma olhada nele com carinho.
Vale dizer que eu já tinha algum conhecimento de Cocoa e Objective-C antes de fazer esse aplicativo. Minha principal referência tem sido o livro Cocoa Programming for Mac OS X.
Gostaria de agradecer ao Matt Aimonetti, que gentilmente me falou sobre o MacRuby, no Hora Extra, quando esteve aqui no Rio recentemente. O que, além de tudo, demonstra a importância de participar sempre do Hora Extra. :-)
E se você ainda não tiver se empolgado pelo MacRuby, aí vão algumas informações adicionais. O projeto é patrocinado pela própria Apple que tem grande interesse nele. De fato, o criador do projeto MacRuby, o belga Laurent Sansonetti trabalha na Apple e atualmente é pago pela empresa para trabalhar basicamente no MacRuby. Por que?
Porque em um futuro próximo, poderemos desenvolver aplicativos para o iPhone usando MacRuby! E isso abre espaço para que uma enorme leva de programadores Ruby comecem a produzir aplicativos para o iPhone. Portanto, se você ainda não programa em Ruby, talvez esteja aí o empurrãozinho que faltava. ;-)



O que você achou? Coloque seus comentários e sugestões abaixo!
Acompanhe o RSS dessa página.
Comentários (2 até o momento)
Daniel Lopes disse aproximadamente 9 horas depois:
Vinícius Manhães Teles disse aproximadamente 10 horas depois: