<?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>Carlan+Calazans &#187; ubuntu</title>
	<atom:link href="http://carlancalazans.com/tag/ubuntu/feed/" rel="self" type="application/rss+xml" />
	<link>http://carlancalazans.com</link>
	<description>{ Às vezes eu sonho com códigos }</description>
	<lastBuildDate>Thu, 28 Oct 2010 22:56:34 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Ruby calculando o dia da Páscoa</title>
		<link>http://carlancalazans.com/ruby-calculando-o-dia-da-pascoa/</link>
		<comments>http://carlancalazans.com/ruby-calculando-o-dia-da-pascoa/#comments</comments>
		<pubDate>Fri, 10 Apr 2009 23:06:46 +0000</pubDate>
		<dc:creator>Carlan Calazans</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[aprendizado]]></category>
		<category><![CDATA[dev]]></category>
		<category><![CDATA[dica]]></category>
		<category><![CDATA[rapidinha]]></category>
		<category><![CDATA[ruby]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://carlancalazans.com/?p=209</guid>
		<description><![CDATA[A Páscoa é uma data comemorativa que serve de referência para datas comemorativas móveis como Carnaval, Quaresma, Corpus Christ e outras. Por isso é importante saber quando a Páscoa vai ser comemorada. Além de interessante, serve como uma brincadeira para os garotos(as) de programa de plantão que não tem nada para fazer no feriado.
Cálculo
No total [...]]]></description>
			<content:encoded><![CDATA[<p>A Páscoa é uma data comemorativa que serve de referência para datas comemorativas móveis como Carnaval, Quaresma, Corpus Christ e outras. Por isso é importante saber quando a Páscoa vai ser comemorada. Além de interessante, serve como uma brincadeira para os garotos(as) de programa de plantão que não tem nada para fazer no feriado.</p>
<h4>Cálculo</h4>
<p>No total são três formas de calcular a data da Páscoa. A primeira é recorrendo a uma tabela, a segunda é através ao algorítimo de Gauss para o intervalo de anos que se inicia em 1900 e termina em 2099 e a terceira com o algorítimo de Meeus / Jones / Butcher. Como exemplo, optei pela segunda forma por ter umas condições e por ela ser mais elaborada. Para quem se interessar, os algorítimos serão relacionados no final deste texto.</p>
<div class="codecolorer-container ruby vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="ruby codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color:#008000; font-style:italic;">#!/usr/bin/env ruby</span><br />
<br />
<span style="color:#CC0066; font-weight:bold;">require</span> <span style="color:#996600;">'date'</span><br />
<br />
FIELDS = <span style="color:#006600; font-weight:bold;">%</span>w<span style="color:#006600; font-weight:bold;">&#123;</span>Carnaval Pascoa Corpus\ Christ<span style="color:#006600; font-weight:bold;">&#125;</span><br />
<br />
ano = <span style="color:#006666;">2009</span> <span style="color:#008000; font-style:italic;">#change me</span><br />
<br />
x = <span style="color:#006666;">24</span><br />
y = <span style="color:#006666;">5</span><br />
<br />
a = ano <span style="color:#006600; font-weight:bold;">%</span> <span style="color:#006666;">19</span><br />
b = ano <span style="color:#006600; font-weight:bold;">%</span> <span style="color:#006666;">4</span><br />
c = ano <span style="color:#006600; font-weight:bold;">%</span> <span style="color:#006666;">7</span><br />
d = <span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#006666;">19</span> <span style="color:#006600; font-weight:bold;">*</span> a <span style="color:#006600; font-weight:bold;">+</span> x<span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#006600; font-weight:bold;">%</span> <span style="color:#006666;">30</span><br />
e = <span style="color:#006600; font-weight:bold;">&#40;</span><span style="color:#006666;">2</span> <span style="color:#006600; font-weight:bold;">*</span> b <span style="color:#006600; font-weight:bold;">+</span> <span style="color:#006666;">4</span> <span style="color:#006600; font-weight:bold;">*</span> c <span style="color:#006600; font-weight:bold;">+</span> <span style="color:#006666;">6</span> <span style="color:#006600; font-weight:bold;">*</span> d <span style="color:#006600; font-weight:bold;">+</span> y<span style="color:#006600; font-weight:bold;">&#41;</span> <span style="color:#006600; font-weight:bold;">%</span> <span style="color:#006666;">7</span><br />
<br />
<span style="color:#9966CC; font-weight:bold;">if</span> <span style="color:#006600; font-weight:bold;">&#40;</span>d <span style="color:#006600; font-weight:bold;">+</span> e <span style="color:#006600; font-weight:bold;">&gt;</span> <span style="color:#006666;">9</span><span style="color:#006600; font-weight:bold;">&#41;</span><br />
&nbsp; <span style="color:#008000; font-style:italic;">#april</span><br />
&nbsp; dia = d <span style="color:#006600; font-weight:bold;">+</span> e <span style="color:#006600; font-weight:bold;">-</span> <span style="color:#006666;">9</span><br />
&nbsp; mes = <span style="color:#006666;">4</span><br />
<br />
&nbsp; <span style="color:#008000; font-style:italic;">#exceptions &nbsp;</span><br />
&nbsp; dia = <span style="color:#006666;">19</span> <span style="color:#9966CC; font-weight:bold;">if</span> <span style="color:#006600; font-weight:bold;">&#40;</span>dia == <span style="color:#006666;">26</span><span style="color:#006600; font-weight:bold;">&#41;</span><br />
&nbsp; dia = <span style="color:#006666;">18</span> <span style="color:#9966CC; font-weight:bold;">if</span> <span style="color:#006600; font-weight:bold;">&#40;</span>dia == <span style="color:#006666;">25</span> <span style="color:#006600; font-weight:bold;">&amp;&amp;</span> d == <span style="color:#006666;">28</span> <span style="color:#006600; font-weight:bold;">&amp;&amp;</span> a <span style="color:#006600; font-weight:bold;">&gt;</span> <span style="color:#006666;">10</span><span style="color:#006600; font-weight:bold;">&#41;</span><br />
<span style="color:#9966CC; font-weight:bold;">else</span><br />
&nbsp; <span style="color:#008000; font-style:italic;">#march</span><br />
&nbsp; dia = d <span style="color:#006600; font-weight:bold;">+</span> e <span style="color:#006600; font-weight:bold;">+</span> <span style="color:#006666;">22</span><br />
&nbsp; mes = <span style="color:#006666;">3</span><br />
<span style="color:#9966CC; font-weight:bold;">end</span><br />
<br />
dt = <span style="color:#CC00FF; font-weight:bold;">Date</span>.<span style="color:#9900CC;">new</span><span style="color:#006600; font-weight:bold;">&#40;</span>ano, mes, dia<span style="color:#006600; font-weight:bold;">&#41;</span><br />
<br />
result = <span style="color:#006600; font-weight:bold;">&#91;</span><span style="color:#006600; font-weight:bold;">&#93;</span><br />
result <span style="color:#006600; font-weight:bold;">&lt;&lt;</span> dt <span style="color:#006600; font-weight:bold;">-</span> <span style="color:#006666;">47</span><br />
result <span style="color:#006600; font-weight:bold;">&lt;&lt;</span> dt<br />
result <span style="color:#006600; font-weight:bold;">&lt;&lt;</span> dt <span style="color:#006600; font-weight:bold;">+</span> <span style="color:#006666;">60</span><br />
<br />
FIELDS.<span style="color:#9900CC;">each</span> <span style="color:#9966CC; font-weight:bold;">do</span> <span style="color:#006600; font-weight:bold;">|</span>d<span style="color:#006600; font-weight:bold;">|</span><br />
&nbsp; <span style="color:#CC0066; font-weight:bold;">puts</span> <span style="color:#996600;">&quot;#{d}: #{result.shift.strftime(&quot;</span><span style="color:#006600; font-weight:bold;">%</span>d<span style="color:#006600; font-weight:bold;">-%</span>m<span style="color:#006600; font-weight:bold;">-%</span>Y<span style="color:#996600;">&quot;)}&quot;</span><br />
<span style="color:#9966CC; font-weight:bold;">end</span></div></div>
<p>Este texto tem uma pegadinha. Na verdade, meu intuito com ele não é ensinar Ruby nem mostrar como se calcula o dia da Páscoa. Foi uma forma que encontrei de mostrar como a linguagem chega perto do idioma, como poucas linguagens o fazem. Qualquer pessoa é capaz de entender as fórmulas matemáticas e relacioná-las com o exemplo mostrado. Sim, existe um açúcar, mas é fácil de entendê-lo também.</p>
<p>A maior parte do tempo, parece que estamos conversando com um editor de textos.</p>
<h4>Referências:</h4>
<ul>
<li><a href="http://pt.wikipedia.org/wiki/P%C3%A1scoa">Páscoa</a></li>
<li><a href="http://pt.wikipedia.org/wiki/C%C3%A1lculo_da_P%C3%A1scoa">Cálculo da Páscoa</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://carlancalazans.com/ruby-calculando-o-dia-da-pascoa/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Números em Objective-C</title>
		<link>http://carlancalazans.com/numeros-em-objective-c/</link>
		<comments>http://carlancalazans.com/numeros-em-objective-c/#comments</comments>
		<pubDate>Thu, 19 Feb 2009 00:33:03 +0000</pubDate>
		<dc:creator>Carlan Calazans</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[aprendizado]]></category>
		<category><![CDATA[dev]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[objectivec]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://carlancalazans.com/?p=119</guid>
		<description><![CDATA[Objective-C pode ser considerado um cinto de utilidades baseado no C. Isso significa que todo o poder da linguagem pai está disponível, incluindo as diversas bibliotecas. Em todos os meus testes, quando precisei de tipos numéricos usei os tipos primitivos do C. A pouco tempo descobri que existe um problema nessa abordagem.
Dependendo do uso, acredito [...]]]></description>
			<content:encoded><![CDATA[<p>Objective-C pode ser considerado um cinto de utilidades baseado no C. Isso significa que todo o poder da linguagem pai está disponível, incluindo as diversas bibliotecas. Em todos os meus testes, quando precisei de tipos numéricos usei os tipos primitivos do C. A pouco tempo descobri que existe um problema nessa abordagem.</p>
<div id="attachment_120" class="wp-caption aligncenter" style="width: 410px"><img class="size-full wp-image-120" title="Números" src="http://carlancalazans.com/wp-content/uploads/2009/02/cone.jpg" alt="Números" width="400" height="332" /><p class="wp-caption-text">4 8 15 16 23 42</p></div>
<p>Dependendo do uso, acredito que os tipos numéricos do C sejam mais indicados, mas ao desenvolver utilizando algumas classes, como NSArray onde não podemos incluir elementos que não sejam objetos, a coisa começa a complicar. O problema em questão não é a linguagem ou os seus criadores e sim a falta de conhecimento do programador.</p>
<p>Olhando a <a href="http://developer.apple.com/referencelibrary/index.html">documentação</a>, depois de uma boa garimpada, é possível encontrar referências que chamam atenção. <a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSNumber_Class/Reference/Reference.html">NSNumber</a> (subclasse de <a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSValue_Class/Reference/Reference.html">NSValue</a>), NSInteger, NSUInteger. A primeira é a mais utilizada e é uma classe (imutável), o resto são somente sinônimos (typedef) para os tipos numéricos já conhecidos do C. Podemos criar um objeto da classe NSNumber através dos tipos signed (ou unsigned) char, short int, int, long int, float, double e BOOL.</p>
<p>Exemplos:</p>
<div class="codecolorer-container objc vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="objc codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #a61390;">int</span> i <span style="color: #002200;">=</span> <span style="color: #2400d9;">123</span>;<br />
<span style="color: #a61390;">float</span> f <span style="color: #002200;">=</span> <span style="color: #2400d9;">123.45</span>;<br />
<span style="color: #a61390;">char</span> c <span style="color: #002200;">=</span> <span style="color: #bf1d1a;">'c'</span>;<br />
<br />
<a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSNumber_Class/"><span style="color: #400080;">NSNumber</span></a> <span style="color: #002200;">*</span> intObject <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSNumber_Class/"><span style="color: #400080;">NSNumber</span></a> numberWithInt<span style="color: #002200;">:</span>i<span style="color: #002200;">&#93;</span>;<br />
<a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSNumber_Class/"><span style="color: #400080;">NSNumber</span></a> <span style="color: #002200;">*</span> floatObject <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSNumber_Class/"><span style="color: #400080;">NSNumber</span></a> numberWithFloat<span style="color: #002200;">:</span>f<span style="color: #002200;">&#93;</span>;<br />
<br />
<span style="color: #11740a; font-style: italic;">// isn't useful to me</span><br />
<a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSNumber_Class/"><span style="color: #400080;">NSNumber</span></a> <span style="color: #002200;">*</span> yesObject <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSNumber_Class/"><span style="color: #400080;">NSNumber</span></a> numberWithBool<span style="color: #002200;">:</span><span style="color: #a61390;">YES</span><span style="color: #002200;">&#93;</span>;<br />
<a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSNumber_Class/"><span style="color: #400080;">NSNumber</span></a> <span style="color: #002200;">*</span> noObject <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSNumber_Class/"><span style="color: #400080;">NSNumber</span></a> numberWithBool<span style="color: #002200;">:</span><span style="color: #a61390;">NO</span><span style="color: #002200;">&#93;</span>;<br />
<br />
<a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSNumber_Class/"><span style="color: #400080;">NSNumber</span></a> <span style="color: #002200;">*</span> doubleObject <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSNumber_Class/"><span style="color: #400080;">NSNumber</span></a> numberWithDouble<span style="color: #002200;">:</span><span style="color: #2400d9;">123.456</span><span style="color: #002200;">&#93;</span>;<br />
<br />
<a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSNumber_Class/"><span style="color: #400080;">NSNumber</span></a> <span style="color: #002200;">*</span> charObject <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSNumber_Class/"><span style="color: #400080;">NSNumber</span></a> numberWithChar<span style="color: #002200;">:</span>c<span style="color: #002200;">&#93;</span>;<br />
<br />
NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;intObject class = %@&quot;</span>, <span style="color: #002200;">&#91;</span>intObject className<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>;<br />
NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;floatObject class = %@&quot;</span>, <span style="color: #002200;">&#91;</span>floatObject className<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>;<br />
NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;yesObject class = %@&quot;</span>, <span style="color: #002200;">&#91;</span>yesObject className<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>;<br />
NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;noObject class = %@&quot;</span>, <span style="color: #002200;">&#91;</span>noObject className<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>;<br />
NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;doubleObject class = %@&quot;</span>, <span style="color: #002200;">&#91;</span>doubleObject className<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>;<br />
NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;CharObject class = %@&quot;</span>, <span style="color: #002200;">&#91;</span>charObject className<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>;<br />
<br />
<span style="color: #11740a; font-style: italic;">// string representation</span><br />
NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;<span style="color: #2400d9;">\n</span>&quot;</span><span style="color: #002200;">&#41;</span>;<br />
NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;String value of intObject = %@&quot;</span>, <span style="color: #002200;">&#91;</span>intObject stringValue<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>;<br />
NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;String value of floatObject = %@&quot;</span>, <span style="color: #002200;">&#91;</span>floatObject stringValue<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>;<br />
NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;String value of yesObject = %@&quot;</span>, <span style="color: #002200;">&#91;</span>yesObject stringValue<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>;<br />
NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;String value of noObject = %@&quot;</span>, <span style="color: #002200;">&#91;</span>noObject stringValue<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>;<br />
NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;String value of doubleObject = %@&quot;</span>, <span style="color: #002200;">&#91;</span>doubleObject stringValue<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>;<br />
NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;String value of CharObject = %@&quot;</span>, <span style="color: #002200;">&#91;</span>charObject stringValue<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>;<br />
<br />
<span style="color: #11740a; font-style: italic;">// comparing</span><br />
<span style="color: #11740a; font-style: italic;">// the return will be NSOrderedAscending (greated than), NSOrderedSame (equal to)</span><br />
<span style="color: #11740a; font-style: italic;">// and NSOrderedDescending (less than).</span><br />
<span style="color: #002200;">&#91;</span>intObject compare<span style="color: #002200;">:</span>floatObject<span style="color: #002200;">&#93;</span>;<br />
<span style="color: #002200;">&#91;</span>floatObject compare<span style="color: #002200;">:</span>intObject<span style="color: #002200;">&#93;</span>;</div></div>
]]></content:encoded>
			<wfw:commentRss>http://carlancalazans.com/numeros-em-objective-c/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Pegando o conteúdo de uma url com Objective-C</title>
		<link>http://carlancalazans.com/pegando-o-conteudo-de-uma-url-com-objective-c/</link>
		<comments>http://carlancalazans.com/pegando-o-conteudo-de-uma-url-com-objective-c/#comments</comments>
		<pubDate>Thu, 05 Feb 2009 01:16:52 +0000</pubDate>
		<dc:creator>Carlan Calazans</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[aprendizado]]></category>
		<category><![CDATA[dev]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[objectivec]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://carlancalazans.com/?p=40</guid>
		<description><![CDATA[Desde ontem estava tentando pegar o conteúdo de uma url qualquer e imprimir no console. Até que não é tão complicado comparando com Ruby ou Python. Minha maior dificuldade foi converter de NSMutableData para NSString. Também não sei por que cargas d&#8217;águas não está funcionando para todas as urls, a do google, por exemplo.
Estou gostando [...]]]></description>
			<content:encoded><![CDATA[<p>Desde ontem estava tentando pegar o conteúdo de uma url qualquer e imprimir no console. Até que não é tão complicado comparando com <a href="http://www.ruby-lang.org">Ruby</a> ou <a href="http://www.python.org">Python</a>. Minha maior dificuldade foi converter de NSMutableData para NSString. Também não sei por que cargas d&#8217;águas não está funcionando para todas as urls, a do <a href="http://www.google.com.br">google</a>, por exemplo.</p>
<p>Estou gostando de Objective-C, mas sinto falta das facilidades de  <a href="http://www.ruby-lang.org">Ruby</a> e <a href="http://www.python.org">Python</a>, provavelmente por estar mais acostumado a elas. E é muito fácil se perder na chamada a métodos utilizando a sintaxe dos colchetes, pior se eles estiverem aninhados. Como estou programando utilizando o ubuntu a &#8220;dot-syntax&#8221; não está disponível, acredito que somente no Mac Os. É nessa hora que um bom editor de textos faz toda a diferença.</p>
<p>Pra quem se interessar, segue o código.</p>
<div class="codecolorer-container objc vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="objc codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #6e371a;">#import &lt;Foundation/Foundation.h&gt;</span><br />
<br />
<span style="color: #11740a; font-style: italic;">// 03-02-2009</span><br />
<span style="color: #11740a; font-style: italic;">// Carlan Calazans (carlancalazans at gmail.com)</span><br />
<br />
<span style="color: #11740a; font-style: italic;">//connection.h</span><br />
<span style="color: #a61390;">@interface</span> Connection<span style="color: #002200;">:</span> <a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSObject_Class/"><span style="color: #400080;">NSObject</span></a><br />
<span style="color: #002200;">&#123;</span><br />
&nbsp; <a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSString_Class/"><span style="color: #400080;">NSString</span></a> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #002200;">*</span>strUrl;<br />
&nbsp; <a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSMutableData_Class/"><span style="color: #400080;">NSMutableData</span></a> &nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #002200;">*</span>myReceivedData;<br />
<span style="color: #002200;">&#125;</span><br />
&nbsp; <span style="color: #002200;">-</span><span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span> initialize;<br />
<span style="color: #a61390;">@end</span><br />
<br />
<span style="color: #11740a; font-style: italic;">//connection.m</span><br />
<span style="color: #a61390;">@implementation</span> Connection<br />
&nbsp; <span style="color: #002200;">-</span><span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span> initialize<br />
&nbsp; <span style="color: #002200;">&#123;</span><br />
&nbsp; NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;Started...&quot;</span><span style="color: #002200;">&#41;</span>;<br />
&nbsp; strUrl <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSString_Class/"><span style="color: #400080;">NSString</span></a> stringWithFormat<span style="color: #002200;">:</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;http://carlancalazans.com&quot;</span><span style="color: #002200;">&#93;</span>;<br />
<br />
&nbsp; NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;URL: %@&quot;</span>, strUrl<span style="color: #002200;">&#41;</span>;<br />
&nbsp; myReceivedData <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><span style="color: #002200;">&#91;</span><a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSMutableData_Class/"><span style="color: #400080;">NSMutableData</span></a> dataWithContentsOfURL<span style="color: #002200;">:</span><span style="color: #002200;">&#91;</span><a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSURL_Class/"><span style="color: #400080;">NSURL</span></a> URLWithString<span style="color: #002200;">:</span>strUrl<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#93;</span> autorelease<span style="color: #002200;">&#93;</span>;<br />
<br />
&nbsp; NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;Received %d bytes of data.&quot;</span>, <span style="color: #002200;">&#91;</span>myReceivedData length<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>;<br />
&nbsp; <a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSString_Class/"><span style="color: #400080;">NSString</span></a> <span style="color: #002200;">*</span>content <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><span style="color: #002200;">&#91;</span><a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSString_Class/"><span style="color: #400080;">NSString</span></a> alloc<span style="color: #002200;">&#93;</span> initWithData<span style="color: #002200;">:</span>myReceivedData encoding<span style="color: #002200;">:</span>NSUTF8StringEncoding<span style="color: #002200;">&#93;</span>;<br />
<br />
&nbsp; NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;Content received: %@&quot;</span>, content<span style="color: #002200;">&#41;</span>;<br />
&nbsp; NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;Finished...&quot;</span><span style="color: #002200;">&#41;</span>;<br />
<br />
&nbsp; <span style="color: #002200;">&#91;</span>content release<span style="color: #002200;">&#93;</span>;<br />
&nbsp; <span style="color: #002200;">&#125;</span><br />
<span style="color: #a61390;">@end</span><br />
<br />
<span style="color: #11740a; font-style: italic;">//main.m</span><br />
<span style="color: #a61390;">int</span> main<span style="color: #002200;">&#40;</span><span style="color: #a61390;">int</span> argc, <span style="color: #a61390;">const</span> <span style="color: #a61390;">char</span> <span style="color: #002200;">*</span>argv<span style="color: #002200;">&#91;</span><span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span><br />
<span style="color: #002200;">&#123;</span><br />
&nbsp; <a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSAutoreleasePool_Class/"><span style="color: #400080;">NSAutoreleasePool</span></a> <span style="color: #002200;">*</span>pool <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><span style="color: #002200;">&#91;</span><a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSAutoreleasePool_Class/"><span style="color: #400080;">NSAutoreleasePool</span></a> alloc<span style="color: #002200;">&#93;</span> init<span style="color: #002200;">&#93;</span>;<br />
<br />
&nbsp; Connection <span style="color: #002200;">*</span>con <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><span style="color: #002200;">&#91;</span>Connection alloc<span style="color: #002200;">&#93;</span> init<span style="color: #002200;">&#93;</span>;<br />
&nbsp; <span style="color: #002200;">&#91;</span>con initialize<span style="color: #002200;">&#93;</span>;<br />
<br />
&nbsp; <span style="color: #002200;">&#91;</span>con release<span style="color: #002200;">&#93;</span>;<br />
&nbsp; <span style="color: #002200;">&#91;</span>pool release<span style="color: #002200;">&#93;</span>;<br />
<br />
&nbsp; <span style="color: #a61390;">return</span> <span style="color: #2400d9;">0</span>;<br />
<span style="color: #002200;">&#125;</span></div></div>
]]></content:encoded>
			<wfw:commentRss>http://carlancalazans.com/pegando-o-conteudo-de-uma-url-com-objective-c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dica: Objective-C no Ubuntu</title>
		<link>http://carlancalazans.com/dica-objective-c-no-ubuntu/</link>
		<comments>http://carlancalazans.com/dica-objective-c-no-ubuntu/#comments</comments>
		<pubDate>Fri, 30 Jan 2009 00:53:32 +0000</pubDate>
		<dc:creator>Carlan Calazans</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[dev]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[objectivec]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://carlancalazans.com/?p=16</guid>
		<description><![CDATA[Após ter lido alguns how-to&#8217;s aqui e ali, resolvi testar. Segui os seguintes passos:
sudo apt-get install gnustep gobjc gnustep-make libgnustep-base-dev
gnustep-netclasses gnustep-dl2

sudo chmod +x /usr/share/GNUstep/Makefiles/GNUstep.sh
Editei o ~/.bashrc e adicionei no final do arquivo:
#gnustep

GNUSTEP_ROOT=/usr/share/GNUstep
export GNUSTEP_ROOT
source $GNUSTEP_ROOT/Makefiles/GNUstep.sh
E agora eu consigo fazer isto:
dog.m
#import &#60;Foundation/NSObject.h&#62;
#import &#60;stdio.h&#62;

// 29-01-2009
// Carlan Calazans (carlancalazans at gmail.com)

// dog.h
@interface Dog: NSObject
&#123;
// instance variables
&#125;

&#160; -&#40;void&#41; bark;
&#160; -&#40;void&#41; [...]]]></description>
			<content:encoded><![CDATA[<p>Após ter lido alguns how-to&#8217;s <a title="Objective-c no Ubuntu 1" href="http://www.roccoangeloni.it/wp/2008/08/07/objectivec-on-ubuntu-linux">aqui</a> e <a title="Objective-c no Ubuntu 2" href="http://blog.msbbc.co.uk/2008/03/objective-c-in-ubuntu-with-gnustep.html">ali</a>, resolvi testar. Segui os seguintes passos:</p>
<div class="codecolorer-container bash vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">apt-get</span> <span style="color: #c20cb9; font-weight: bold;">install</span> gnustep gobjc gnustep-make libgnustep-base-dev<br />
gnustep-netclasses gnustep-dl2<br />
<br />
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">chmod</span> +x <span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>share<span style="color: #000000; font-weight: bold;">/</span>GNUstep<span style="color: #000000; font-weight: bold;">/</span>Makefiles<span style="color: #000000; font-weight: bold;">/</span>GNUstep.sh</div></div>
<p>Editei o ~/.bashrc e adicionei no final do arquivo:</p>
<div class="codecolorer-container bash vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #666666; font-style: italic;">#gnustep</span><br />
<br />
<span style="color: #007800;">GNUSTEP_ROOT</span>=<span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>share<span style="color: #000000; font-weight: bold;">/</span>GNUstep<br />
<span style="color: #7a0874; font-weight: bold;">export</span> GNUSTEP_ROOT<br />
<span style="color: #7a0874; font-weight: bold;">source</span> <span style="color: #007800;">$GNUSTEP_ROOT</span><span style="color: #000000; font-weight: bold;">/</span>Makefiles<span style="color: #000000; font-weight: bold;">/</span>GNUstep.sh</div></div>
<p>E agora eu consigo fazer isto:</p>
<p>dog.m</p>
<div class="codecolorer-container objc vibrant" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="objc codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #6e371a;">#import &lt;Foundation/NSObject.h&gt;</span><br />
<span style="color: #6e371a;">#import &lt;stdio.h&gt;</span><br />
<br />
<span style="color: #11740a; font-style: italic;">// 29-01-2009</span><br />
<span style="color: #11740a; font-style: italic;">// Carlan Calazans (carlancalazans at gmail.com)</span><br />
<br />
<span style="color: #11740a; font-style: italic;">// dog.h</span><br />
<span style="color: #a61390;">@interface</span> Dog<span style="color: #002200;">:</span> <a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSObject_Class/"><span style="color: #400080;">NSObject</span></a><br />
<span style="color: #002200;">&#123;</span><br />
<span style="color: #11740a; font-style: italic;">// instance variables</span><br />
<span style="color: #002200;">&#125;</span><br />
<br />
&nbsp; <span style="color: #002200;">-</span><span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span> bark;<br />
&nbsp; <span style="color: #002200;">-</span><span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span> eat;<br />
&nbsp; <span style="color: #002200;">-</span><span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span> chaseCat;<br />
<span style="color: #a61390;">@end</span><br />
<br />
<span style="color: #11740a; font-style: italic;">// dog.m</span><br />
<span style="color: #a61390;">@implementation</span> Dog<br />
&nbsp; <span style="color: #002200;">-</span><span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span> bark<br />
&nbsp; <span style="color: #002200;">&#123;</span><br />
&nbsp; &nbsp; <a href="http://www.opengroup.org/onlinepubs/009695399/functions/printf.html"><span style="color: #a61390;">printf</span></a><span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">&quot;Ruff, ruff, ruff...<span style="color: #2400d9;">\n</span>&quot;</span><span style="color: #002200;">&#41;</span>;<br />
&nbsp; <span style="color: #002200;">&#125;</span><br />
<br />
&nbsp; <span style="color: #002200;">-</span><span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span> eat<br />
&nbsp; <span style="color: #002200;">&#123;</span><br />
&nbsp; &nbsp; <a href="http://www.opengroup.org/onlinepubs/009695399/functions/printf.html"><span style="color: #a61390;">printf</span></a><span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">&quot;Im hungry, i love dog food.<span style="color: #2400d9;">\n</span>&quot;</span><span style="color: #002200;">&#41;</span>;<br />
&nbsp; <span style="color: #002200;">&#125;</span><br />
<br />
&nbsp; <span style="color: #002200;">-</span><span style="color: #002200;">&#40;</span><span style="color: #a61390;">void</span><span style="color: #002200;">&#41;</span> chaseCat<br />
&nbsp; <span style="color: #002200;">&#123;</span><br />
&nbsp; &nbsp; <a href="http://www.opengroup.org/onlinepubs/009695399/functions/printf.html"><span style="color: #a61390;">printf</span></a><span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">&quot;I think i saw a pussy cat.<span style="color: #2400d9;">\n</span>&quot;</span><span style="color: #002200;">&#41;</span>;<br />
&nbsp; <span style="color: #002200;">&#125;</span><br />
<span style="color: #a61390;">@end</span><br />
<br />
<span style="color: #11740a; font-style: italic;">// main.m</span><br />
<span style="color: #a61390;">int</span> main <span style="color: #002200;">&#40;</span> <span style="color: #a61390;">int</span> argc, <span style="color: #a61390;">const</span> <span style="color: #a61390;">char</span> <span style="color: #002200;">*</span>argv<span style="color: #002200;">&#91;</span><span style="color: #002200;">&#93;</span> <span style="color: #002200;">&#41;</span><br />
<span style="color: #002200;">&#123;</span><br />
&nbsp; Dog <span style="color: #002200;">*</span>zorro <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><span style="color: #002200;">&#91;</span>Dog alloc<span style="color: #002200;">&#93;</span> init<span style="color: #002200;">&#93;</span>;<br />
<br />
&nbsp; <span style="color: #002200;">&#91;</span>zorro chaseCat<span style="color: #002200;">&#93;</span>;<br />
&nbsp; <span style="color: #002200;">&#91;</span>zorro bark<span style="color: #002200;">&#93;</span>;<br />
&nbsp; <span style="color: #002200;">&#91;</span>zorro eat<span style="color: #002200;">&#93;</span>;<br />
<br />
&nbsp; <span style="color: #002200;">&#91;</span>zorro release<span style="color: #002200;">&#93;</span>;<br />
<br />
&nbsp; <span style="color: #a61390;">return</span> <span style="color: #2400d9;">0</span>;<br />
<span style="color: #002200;">&#125;</span></div></div>
<p>Compilar com o gcc e rodar <img src='http://carlancalazans.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://carlancalazans.com/dica-objective-c-no-ubuntu/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

