<?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>Luminescente &#187; objc</title>
	<atom:link href="http://luminescente.com/tag/objc/feed/" rel="self" type="application/rss+xml" />
	<link>http://luminescente.com</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Tue, 07 Feb 2012 22:38:05 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Stickies.app Sync &#8211; Teaser II</title>
		<link>http://luminescente.com/2008/12/stickiesapp-sync-teaser-ii/</link>
		<comments>http://luminescente.com/2008/12/stickiesapp-sync-teaser-ii/#comments</comments>
		<pubDate>Tue, 09 Dec 2008 00:25:32 +0000</pubDate>
		<dc:creator>Pedro Cardoso</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[cocoa]]></category>
		<category><![CDATA[objc]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[rails]]></category>
		<category><![CDATA[stickies sync]]></category>

		<guid isPermaLink="false">http://luminescente.com/?p=407</guid>
		<description><![CDATA[Segundo teaser para o meu último projecto. O trabalho tem avançado a um excelente ritmo, e só é pena estes fins de semana de 3 dias só sejam uma vez por ano (e às vezes nem isso). Tenho aprendido uma alarvidade de coisas novas, seja em Cocoa ou em Rails, e os momentos &#8220;eureka&#8221; são [...]]]></description>
			<content:encoded><![CDATA[<p>Segundo teaser para o meu último <a href="http://luminescente.com/2008/12/01/stickiesapp/">projecto</a>.</p>
<p>O trabalho tem avançado a um excelente ritmo, e só é pena estes fins de semana de 3 dias só sejam uma vez por ano (e às vezes nem isso). Tenho aprendido uma alarvidade de coisas novas, seja em Cocoa ou em Rails, e os momentos &#8220;eureka&#8221; são uns a seguir aos outros. Pequenos &#8220;eurekas&#8221; pessoais, mas &#8220;eurekas&#8221; mesmo assim&#8230;</p>
<p>O que foi feito então? A aplicação para Mac já tem 90% das funcionalidades que considero fulcrais: pega na base de dados do Stickies, faz a publicação para um URL, recebe a resposta em XML que depois de processada é utilizada para reconstruir a base de dados do Stickies. Já estou a executar o bloco de sincronização periodicamente e faço o relauch ao Stickies para o refrescar (não arranjei forma de o obrigar a actualizar-se). Devo ter memory leaks a dar com um pau que estes anos todos de PHP tornaram-me muito preguiçoso nos meus mallocs e frees. Queria integrar o <a href="http://sparkle.andymatuschak.org/">Sparkle</a> na versão inicial, dado que prevejo muitos updates durante as primeiras semanas.</p>
<p>Quanto ao serviço web, grande avanço este fim de semana. Estava a zero ontem de manhã e hoje tenho um site feito em Rails com grande parte da lógica feita. Melhor que ter o site feito, é que estou a perceber bem a mecânica do Rails. Melhor ainda, é que é um gozo enorme. Valeu a pena ter andado a ler <a href="http://railsforphp.com/">Rails for PHP Programmers</a> aos poucos nas últimas semanas.</p>
<p>Hoje não há tempo para mais, mas fica um screenshot do site a correr aqui no meu computador.</p>
<p><a href='http://luminescente.com/wp-content/uploads/2008/12/picture-11.png'><img src="http://luminescente.com/wp-content/uploads/2008/12/picture-11-212x300.png" alt="" title="picture-11" width="212" height="300" class="alignnone size-medium wp-image-408" /></a></p>
<p>No próximo post espero já ter um link para download de um pequeno DMG e outro link para o pequeno site&#8230; Ainda não tem nome, mas estou também a tratar disso.</p>
<p>Acho que seria interessante um log do desenvolvimento das duas coisas, mas para já acho que vou manter este formato semanal. Quando tiver a versão inicial concluída faço um post com todos os detalhes que ninguém quer saber&#8230;</p>
<p>Vou dando notícias&#8230; <img src='http://luminescente.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://luminescente.com/2008/12/stickiesapp-sync-teaser-ii/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Stickies.app Sync &#8211; Teaser</title>
		<link>http://luminescente.com/2008/12/stickiesapp-sync-teaser/</link>
		<comments>http://luminescente.com/2008/12/stickiesapp-sync-teaser/#comments</comments>
		<pubDate>Wed, 03 Dec 2008 21:44:47 +0000</pubDate>
		<dc:creator>Pedro Cardoso</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[app]]></category>
		<category><![CDATA[cocoa]]></category>
		<category><![CDATA[objc]]></category>
		<category><![CDATA[stickies.app]]></category>
		<category><![CDATA[sticky sync]]></category>
		<category><![CDATA[sync]]></category>
		<category><![CDATA[teaser]]></category>

		<guid isPermaLink="false">http://luminescente.com/?p=404</guid>
		<description><![CDATA[Segue aqui um teaser para o o que falei aqui anteriormente. A minha app já corre, já abre a base de dados do Stickies, pega nas notas e submete-as por POST para o &#8220;servidor&#8221;, recebe a resposta em XML, mastiga este XML e guarda-o no formato que o Stickies percebe. O servidor é para já [...]]]></description>
			<content:encoded><![CDATA[<p>Segue aqui um teaser para o o que <a href="http://luminescente.com/2008/12/01/stickiesapp/">falei aqui anteriormente</a>.</p>
<p><a href='http://luminescente.com/wp-content/uploads/2008/12/picture-1.png'><img src="http://luminescente.com/wp-content/uploads/2008/12/picture-1.png" alt="" title="Stickies.app" width="189" height="130" class="alignnone size-full wp-image-405" /></a></p>
<p>A minha app já corre, já abre a base de dados do Stickies, pega nas notas e submete-as por POST para o &#8220;servidor&#8221;, recebe a resposta em XML, mastiga este XML e guarda-o no formato que o Stickies percebe.</p>
<p>O servidor é para já um mero &#8220;eco&#8221; feito em PHP: limita-se a empacotar em XML os dados que recebe. A única diferença é que acrescenta ao texto de cada nota a data e hora.</p>
<p><a href='http://luminescente.com/wp-content/uploads/2008/12/picture-2.png'><img src="http://luminescente.com/wp-content/uploads/2008/12/picture-2.png" alt="" title="Nota" width="328" height="228" class="alignnone size-full wp-image-406" /></a></p>
<p>A tarefa que se segue é limpar o código. Devo ter 80% de código comentado, com muitas &#8220;muletas&#8221;: snippets em ObjC que me foram úteis e/ou que ainda podem vir a dar jeito. Depois disto posso começar a pensar no servidor.</p>
<p>Também podia pensar numa forma melhor para comunicar com o servidor já que estou com as mãos na massa, mas o que tenho feito funciona. Para quê complicar? <img src='http://luminescente.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Tenho aqui alguns detalhes ainda por resolver: as notas não têm identificadores, mas talvez possa usar o CreationDate como identificador. Estou a ignorar a posição das notas no ecran. Deixo vazio o campo com as WindowFlags e as notas aparecem-me todas empilhadas no canto inferior direito do ecran, tenho que pelo menos fazer um cascade daquilo. Espero que o NSRect seja só os pares X e Y, W e H ou algo igualmente simples de implementar.</p>
<p>O ícone foi gamado do próprio Stickies, logo se arranja qualquer coisa mais catita. Isto ainda não tem nome, há sugestões? De preferência que ainda tenha um .com livre&#8230; <img src='http://luminescente.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  A minha primeira escolha foi &#8220;Stickier&#8221;, mas o .com custava $7000. Ofereci-lhe 60 e uma caixa de ovos moles mas o gajo não quis, go figure&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://luminescente.com/2008/12/stickiesapp-sync-teaser/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Tabuada.app</title>
		<link>http://luminescente.com/2008/06/tabuadaapp/</link>
		<comments>http://luminescente.com/2008/06/tabuadaapp/#comments</comments>
		<pubDate>Wed, 18 Jun 2008 11:15:53 +0000</pubDate>
		<dc:creator>Pedro Cardoso</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[app]]></category>
		<category><![CDATA[cocoa]]></category>
		<category><![CDATA[objc]]></category>
		<category><![CDATA[objective c]]></category>

		<guid isPermaLink="false">http://luminescente.com/?p=349</guid>
		<description><![CDATA[Tenho uma ideia para uma aplicação para Mac OS X. Decidi meter mãos à obra e ando a tentar aprender Objective C e Cocoa. Ainda investiguei Python e Ruby com Cocoa e WxWidgets mas decidi-me pela base. Ainda que o âmbito deste dialecto do C esteja limitado ao universo Apple, é talvez a melhor forma [...]]]></description>
			<content:encoded><![CDATA[<p>Tenho uma ideia para uma aplicação para Mac OS X. Decidi meter mãos à obra e ando a tentar aprender Objective C e Cocoa. Ainda investiguei Python e Ruby com Cocoa e WxWidgets mas decidi-me pela base.</p>
<p>Ainda que o âmbito deste dialecto do C esteja limitado ao universo Apple, é talvez a melhor forma (ie: com mais documentação e exemplos) de produzir aplicações nativas para Mac OS X, além de que tudo indica que o iPhone será um mercado tão grande ou maior que o OS X. Acho um bom investimento por estas razões, além que vale pelo desafio&#8230;</p>
<p>Ainda é cedo para tecer comentários sobre a linguagem e a framework. Para já basta dizer que são bastante diferentes de tudo aquilo a que estou habituado. Depois de uns anos a trabalhar exclusivamente na Web (em PHP e JS), descontando umas brincadeiras aqui e ali noutras linguagens, sabe bem voltar ao mundo das aplicações desktop, ainda que ter que voltar a declarar variáveis e prestar atenção aos tipos de dados é doloroso.</p>
<p>Para já, aqui vai um screenshot da minha primeira aplicação Cocoa. Uma calculadora de tabuadas. Quem quiser o código (muito desarrumado), é só pedir.</p>
<p><img src="http://luminescente.com/wp-content/uploads/2008/06/tabuada-255x300.png" alt="" title="tabuada" /></p>
<p>Se calhar posso acrescentar a possiblidade de imprimir e oferecer a app à mãe do puto que (ouvi há dias no ginásio) achou desumano o professor mandar o miúdo fazer não sei quantas tabuadas para casa&#8230; <img src='http://luminescente.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Recursos úteis:</p>
<ul>
<li><a href="http://www.vimeo.com/366398">Tutorial no Vimeo</a> </li>
<li><a href="http://forums.macrumors.com/showthread.php?t=378627">Novidades no Xcode 3</a></li>
<li>Cocoadev
<ul>
<li><a href="http://www.cocoadev.com/index.pl?NSDictionary">NSDicionary</a></li>
<li><a href="http://www.cocoadev.com/index.pl?NSTableViewTutorial"> NSTableViewTutorial</a></li>
</ul>
</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://luminescente.com/2008/06/tabuadaapp/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

