18
Dec
stored in: Códigos, Linguagens, Outros and tagged:

Há algum tempo que eu estou querendo aprender a linguagem Ruby. Segundo dizem as artes do aprendizado, deve-se sempre partir de algo conhecido para algo não conhecido que queira-se aprender. Então resolvi começar com jRuby, implementação do Ruby em Java, que roda na JVM. Usando Swing, a SDK padrão do Java para interfaces gráficas.

Criei esse joguinho da velha (jrVeia) bem simples, que na verdade eu nem terminei ainda. Na verdade não mexi mais nele depois que eu comecei. Falta apenas a verificação do tabuleiro. Pretendo também, se der, implementar uma camada de rede, para poder jogar via direct ip (igual eu fiz com o VeiaOnline).

Mais detalhes: jrVeia.

Como já disse, comecei com esse joguinho só pra me familiarizar com a sintaxe do Ruby, uma vez que já conheço um pouco de Swing. Na verdade nem sei qual é a real aplicabilidade de linguagens interpretadas a jogos. Vou estudar mais isso, mesmo porque pretendo participar do Indie Bay Competition com Ruby e Gosu. Pode deixar que logo logo eu compartilho aqui o que eu aprendi.

Só para ilustrar o tópico, vou mostrar um código bem simples pra criar uma janela com jRuby e Swing:

# Diz que vamos usar as classes do Java
require 'java'

#
# Podemos usar puro Ruby na JVM, ou interagir completamente com classes em Java! \o/
#

# A classe principal, que herda da classe JFrame, exatamente como fazemos no Java...
class Window < javax.swing.JFrame

   # Nosso construtor
   def initialize

      # Super Man - Nenhuma novidade aqui ^^
      super("Hello World")

      # Aqui muda, você pode chamar os métodos com o mesmo nome em java
      # setSize, ou então chamar pelo padrão Ruby, set_size, que ele
      # irá executar o método do mesmo jeito!
      set_size(300, 300)
      set_visible(true)
      set_default_close_operation(javax.swing.JFrame::EXIT_ON_CLOSE)

      # Vamos adicionar um textinho na janela
      add(javax.swing.JLabel.new("Hello World - by CrociDB"))
   end
end

# Aqui está o nosso &quot;método main&quot;
janela = Window.new

Só para vocês terem uma idéia da facilidade. Não esqueçam de dar uma olhadinha no código do jrVeia. E aguardem, logo sai um post açucarado sobre Gosu e Ruby. Até lá. :)

Google Buzz
Compartilhar: Share this post with the world.
  • Twitter
  • Posterous
  • Facebook
  • del.icio.us
  • Digg
  • Friendfeed
  • Google
  • LinkedIn
  • Reddit
  • StumbleUpon
  • Technorati

This website uses IntenseDebate comments, but they are not currently loaded because either your browser doesn't support JavaScript, or they didn't load fast enough.

4 Responses to “jRuby e Swing”

  1. Vinicius B. Fuentes Says:

    Uma linguagem interpretada pode ser bem útil para se fazer a lógica de jogo em cima de uma engine pronta – o bom de uma linguagem interpretada do tipo lua e ruby é que, com elas, você pode criar códigos mais próximos à logica do jogo do que da engine em si. Acho q a engine do neverwinter nights faz isso pra facilitar terceiros a extender o jogo :)

  2. Rodolfo Says:

    Gostaria de saber que editor é esse seu, bem bacana…

  3. Rodolfo Says:

    queria saber que editor vc usa, bem bacana o visual dele… E parabéns, também tenho vontade de aprender ruby.

  4. CrociDB Says:

    @Rodolfo

    Editor de código pra Ruby? Pra Windows uso o Notepad++, muuuuuito bom, no linux eu me viro com o Vim e o Gedit…. hehehe

Leave a Reply

Powered by WP Hashcash

Web Analytics