<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>CrociDBlog &#187; Linguagens</title>
	<atom:link href="http://crocidb.com/blog/category/linguagens/feed/" rel="self" type="application/rss+xml" />
	<link>http://crocidb.com/blog</link>
	<description>Programação, Jogos, Desenvolvimento de Games e opinião.</description>
	<lastBuildDate>Wed, 11 Aug 2010 23:04:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
<atom:link rel="hub" href="http://pubsubhubbub.appspot.com"/><atom:link rel="hub" href="http://superfeedr.com/hubbub"/>		<item>
		<title>Interpretando Games 1: Introdução</title>
		<link>http://crocidb.com/blog/2009/12/interpretando-games-1-introducao/</link>
		<comments>http://crocidb.com/blog/2009/12/interpretando-games-1-introducao/#comments</comments>
		<pubDate>Wed, 23 Dec 2009 13:47:33 +0000</pubDate>
		<dc:creator>CrociDB</dc:creator>
				<category><![CDATA[Linguagens]]></category>
		<category><![CDATA[perl]]></category>
		<category><![CDATA[pygame]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[Ruby]]></category>

		<guid isPermaLink="false">http://crocidb.com/blog/?p=480</guid>
		<description><![CDATA[Esse ano de 2009 pra mim foi um ano de muitas novidades, principalmente falando de linguagens de programação interpretadas. Por trabalhar com Web, me aperfeiçoei muito com PHP &#8212; linguagem que eu gosto bastante, aliás. Então logo descobri o mundo do Ruby, mais uma vez devido à Web: Ruby on Rails. Uma que está fazendo [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: left;">Esse ano de 2009 pra mim foi um ano de muitas novidades, principalmente falando de linguagens de programação interpretadas. Por trabalhar com Web, me aperfeiçoei muito com PHP &#8212; linguagem que eu gosto bastante, aliás. Então logo descobri o mundo do Ruby, mais uma vez devido à Web: Ruby on Rails.</p>
<p><a href="http://www.flickr.com/photos/xikita/48647105/"><img class="size-medium wp-image-481 alignright" title="Perl" src="http://crocidb.com/blog/wp-content/uploads/2009/12/camelo-300x225.jpg" alt="" width="153" height="114" /></a>Uma que está fazendo sucesso ultimamente, principalmente na área de desenvolvimento de games, é Python. Eu, pelo menos, ouço muito falar da PyGame &#8212; biblioteca de jogos para Python &#8211;, resolvi também dar uma olhada nisso. E recentemente, fui convidado por um amigo a estudar um pouco de Perl. Muitos devem pensar: &#8220;Perl? Vai aprender Fortran também!&#8221;. Não custa nada, é uma linguagem exótica, que, apesar de ser antiga, ainda é bem poderosa e com uma base de usuários forte.</p>
<p>Devido a minha natureza gamer, sempre procuro interligar qualquer coisa relacionada a desenvolvimento que eu aprenda a jogos, não foi diferente agora. Por tudo isso que resolvi escrever uma série de tópicos falando sobre jogos feitos em linguagens interpretadas como essas. Claro que eu não sou nenhum <em>expert</em> (aliás, não sei quase nada ainda) em nenhuma dessas linguagens, como já disse, estou apenas aprendendo. Essa série é mais uma compilação do que encontrei/vou encontrar em pesquisas sobre o tema, o que me estimula ainda mais a aprender, e eventualmente você também.</p>
<p>Eu poderia começar falando das vantagens e desvantagens dessas linguagens, ou de linguagens interpretadas num geral, mas não o farei. Só o fato das máquinas virtuais otimizarem muitos aspectos de desempenho, trabalharem na gerência de memória e coleta de lixo, e você só ter que escrever um código compatível com todas as &#8220;plataformas&#8221; é suficiente.</p>
<p>Vale a pena ressaltar que estamos falando de joguinhos. E nesse caso só vou tratar de jogos 2D, que é o que eu mais gosto de fazer.
<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fcrocidb.com%2Fblog%2F2009%2F12%2Finterpretando-games-1-introducao%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fcrocidb.com%2Fblog%2F2009%2F12%2Finterpretando-games-1-introducao%2F&amp;source=CrociDB&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<a class="google_buzz"  
href="http://www.google.com/reader/link?url=http://crocidb.com/blog/2009/12/interpretando-games-1-introducao/&title=Interpretando+Games+1:+Introdução&srcURL=http://crocidb.com/blog" target="_blank" rel="nofollow"><img
src="http://crocidb.com/blog/wp-content/plugins/google-buzz-button-for-wordpress/images/google-buzz.png" alt="Google Buzz" /></a>]]></content:encoded>
			<wfw:commentRss>http://crocidb.com/blog/2009/12/interpretando-games-1-introducao/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>jRuby e Swing</title>
		<link>http://crocidb.com/blog/2009/12/jruby-e-swing/</link>
		<comments>http://crocidb.com/blog/2009/12/jruby-e-swing/#comments</comments>
		<pubDate>Fri, 18 Dec 2009 12:00:37 +0000</pubDate>
		<dc:creator>CrociDB</dc:creator>
				<category><![CDATA[Códigos]]></category>
		<category><![CDATA[Linguagens]]></category>
		<category><![CDATA[Outros]]></category>

		<guid isPermaLink="false">http://crocidb.com/blog/?p=474</guid>
		<description><![CDATA[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 [...]]]></description>
			<content:encoded><![CDATA[<p>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 <a href="http://crocidb.com/blog/tag/ruby/">jRuby</a>, implementação do Ruby em Java, que roda na JVM. Usando Swing, a SDK padrão do Java para interfaces gráficas.</p>
<p>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 <em>direct ip</em> (igual eu fiz com o VeiaOnline).</p>
<p>Mais detalhes: <a href="http://github.com/CrociDB/jrVeia">jrVeia</a>.</p>
<p>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 <a href="http://theindiebay.com/competition/">Indie Bay Competition</a> com <a href="http://crocidb.com/blog/tag/ruby/">Ruby</a> e <a href="http://crocidb.com/blog/tag/gosu/">Gosu</a>. Pode deixar que logo logo eu compartilho aqui o que eu aprendi.</p>
<p>Só para ilustrar o tópico, vou mostrar um código bem simples pra criar uma janela com jRuby e Swing:</p>
<pre class="brush: ruby;">
# 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 &lt; javax.swing.JFrame

   # Nosso construtor
   def initialize

      # Super Man - Nenhuma novidade aqui ^^
      super(&quot;Hello World&quot;)

      # 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(&quot;Hello World - by CrociDB&quot;))
   end
end

# Aqui está o nosso &amp;quot;método main&amp;quot;
janela = Window.new
</pre>
<p>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á. <img src='http://crocidb.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<div class="zemanta-pixie"><img class="zemanta-pixie-img" src="http://img.zemanta.com/pixy.gif?x-id=6b0163be-3868-8a06-a03e-63924d91cc25" alt="" /></div>
<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Fcrocidb.com%2Fblog%2F2009%2F12%2Fjruby-e-swing%2F"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Fcrocidb.com%2Fblog%2F2009%2F12%2Fjruby-e-swing%2F&amp;source=CrociDB&amp;style=normal&amp;service=bit.ly" height="61" width="50" /><br />
			</a>
		</div>
<a class="google_buzz"  
href="http://www.google.com/reader/link?url=http://crocidb.com/blog/2009/12/jruby-e-swing/&title=jRuby+e+Swing&srcURL=http://crocidb.com/blog" target="_blank" rel="nofollow"><img
src="http://crocidb.com/blog/wp-content/plugins/google-buzz-button-for-wordpress/images/google-buzz.png" alt="Google Buzz" /></a>]]></content:encoded>
			<wfw:commentRss>http://crocidb.com/blog/2009/12/jruby-e-swing/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
