<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: Tiny Types</title>
	<atom:link href="http://gc.blog.br/2007/10/03/tiny-types/feed/" rel="self" type="application/rss+xml" />
	<link>http://gc.blog.br/2007/10/03/tiny-types/</link>
	<description>Blog sobre desenvolvimento de software e tecnologia</description>
	<lastBuildDate>Sun, 16 Oct 2011 12:18:18 -0400</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Phillip Calçado "Shoes"</title>
		<link>http://gc.blog.br/2007/10/03/tiny-types/comment-page-1/#comment-202</link>
		<dc:creator>Phillip Calçado "Shoes"</dc:creator>
		<pubDate>Fri, 12 Oct 2007 01:39:05 +0000</pubDate>
		<guid isPermaLink="false">http://gc.blog.br/2007/10/03/tiny-types/#comment-202</guid>
		<description>@gc
Uma FluentInterface, por definição, estupra a sintaxe e estilo da linguagem em favor de legibilidade, então achp que não se aplica o padrão apesard e termos a,ggo no estilo por questões técnicas.

@Rafael
Nem vem, não vou discutir isso novamente :P Além do que, todo extremo tem grande chance de ser ruim, seja do que for ;)</description>
		<content:encoded><![CDATA[<p>@gc<br />
Uma FluentInterface, por definição, estupra a sintaxe e estilo da linguagem em favor de legibilidade, então achp que não se aplica o padrão apesard e termos a,ggo no estilo por questões técnicas.</p>
<p>@Rafael<br />
Nem vem, não vou discutir isso novamente <img src='http://gc.blog.br/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' />  Além do que, todo extremo tem grande chance de ser ruim, seja do que for <img src='http://gc.blog.br/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rafael de F. Ferreira</title>
		<link>http://gc.blog.br/2007/10/03/tiny-types/comment-page-1/#comment-201</link>
		<dc:creator>Rafael de F. Ferreira</dc:creator>
		<pubDate>Fri, 05 Oct 2007 04:48:56 +0000</pubDate>
		<guid isPermaLink="false">http://gc.blog.br/2007/10/03/tiny-types/#comment-201</guid>
		<description>Shoes: &quot;Putz, isso é levar tipagem estática ao extremo. &quot;

You say that like it&#039;s a bad thing :P</description>
		<content:encoded><![CDATA[<p>Shoes: &#8220;Putz, isso é levar tipagem estática ao extremo. &#8221;</p>
<p>You say that like it&#8217;s a bad thing <img src='http://gc.blog.br/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Guilherme Chapiewski</title>
		<link>http://gc.blog.br/2007/10/03/tiny-types/comment-page-1/#comment-200</link>
		<dc:creator>Guilherme Chapiewski</dc:creator>
		<pubDate>Thu, 04 Oct 2007 16:00:06 +0000</pubDate>
		<guid isPermaLink="false">http://gc.blog.br/2007/10/03/tiny-types/#comment-200</guid>
		<description>Talvez para um domain model fique realmente muito saturado mas para uma fluent interface da vida continua me parecendo uma idéia interessante...</description>
		<content:encoded><![CDATA[<p>Talvez para um domain model fique realmente muito saturado mas para uma fluent interface da vida continua me parecendo uma idéia interessante&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Phillip Calçado "Shoes"</title>
		<link>http://gc.blog.br/2007/10/03/tiny-types/comment-page-1/#comment-199</link>
		<dc:creator>Phillip Calçado "Shoes"</dc:creator>
		<pubDate>Thu, 04 Oct 2007 15:09:55 +0000</pubDate>
		<guid isPermaLink="false">http://gc.blog.br/2007/10/03/tiny-types/#comment-199</guid>
		<description>Ah, ou use Ruby, javaScript ou Common Lisp e acabe com o problema pela raiz :P</description>
		<content:encoded><![CDATA[<p>Ah, ou use Ruby, javaScript ou Common Lisp e acabe com o problema pela raiz <img src='http://gc.blog.br/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Phillip Calçado "Shoes"</title>
		<link>http://gc.blog.br/2007/10/03/tiny-types/comment-page-1/#comment-198</link>
		<dc:creator>Phillip Calçado "Shoes"</dc:creator>
		<pubDate>Thu, 04 Oct 2007 15:09:19 +0000</pubDate>
		<guid isPermaLink="false">http://gc.blog.br/2007/10/03/tiny-types/#comment-198</guid>
		<description>Putz, isso é levar tipagem estática ao extremo. Criar tipos só para deixxar a intenção do método mais claro me parece um overkill tão grande quanto criar interfaces para toda e qualquer coisa porque talvez, quem sabe, mudem um dia.

Você acaba criando classes que não são classes, são apenas instâncias de uma classe com um nome mais fancy. Uma IDE decente vai te dar os nomes dos parâmetros sem gambiarras e assinatos de OO :P</description>
		<content:encoded><![CDATA[<p>Putz, isso é levar tipagem estática ao extremo. Criar tipos só para deixxar a intenção do método mais claro me parece um overkill tão grande quanto criar interfaces para toda e qualquer coisa porque talvez, quem sabe, mudem um dia.</p>
<p>Você acaba criando classes que não são classes, são apenas instâncias de uma classe com um nome mais fancy. Uma IDE decente vai te dar os nomes dos parâmetros sem gambiarras e assinatos de OO <img src='http://gc.blog.br/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Guilherme Chapiewski</title>
		<link>http://gc.blog.br/2007/10/03/tiny-types/comment-page-1/#comment-197</link>
		<dc:creator>Guilherme Chapiewski</dc:creator>
		<pubDate>Thu, 04 Oct 2007 14:56:42 +0000</pubDate>
		<guid isPermaLink="false">http://gc.blog.br/2007/10/03/tiny-types/#comment-197</guid>
		<description>Sim, acho que dá pra considerar os Tiny Types como Value Objects, mas o conceito não é exatamente o mesmo.

Sobre ORM e complexidade, é o tipo de coisa que só vai dar pra descobrir depois que fizer uma implementação pela primeira vez :) Talvez exista alguma solução ridiculamente simples no Hibernate que resolva o problema, por exemplo.

Mesmo com isso o conceito é interessante e está na minha lista de &quot;POCs TO DO&quot; :)

[ ]s, Guilherme</description>
		<content:encoded><![CDATA[<p>Sim, acho que dá pra considerar os Tiny Types como Value Objects, mas o conceito não é exatamente o mesmo.</p>
<p>Sobre ORM e complexidade, é o tipo de coisa que só vai dar pra descobrir depois que fizer uma implementação pela primeira vez <img src='http://gc.blog.br/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Talvez exista alguma solução ridiculamente simples no Hibernate que resolva o problema, por exemplo.</p>
<p>Mesmo com isso o conceito é interessante e está na minha lista de &#8220;POCs TO DO&#8221; <img src='http://gc.blog.br/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>[ ]s, Guilherme</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Marcelo</title>
		<link>http://gc.blog.br/2007/10/03/tiny-types/comment-page-1/#comment-196</link>
		<dc:creator>Marcelo</dc:creator>
		<pubDate>Thu, 04 Oct 2007 14:36:59 +0000</pubDate>
		<guid isPermaLink="false">http://gc.blog.br/2007/10/03/tiny-types/#comment-196</guid>
		<description>A idéia parece legal, mas adiciona uma complexidade que acho desnecessária.

Como nosso colega disse, fazer o mapeamento para um ORM não ficará tão simples - talvez como component ou criar um userType(hibernate).

As maiores vantagens sem dúvida é na hora do desenvolvimento.</description>
		<content:encoded><![CDATA[<p>A idéia parece legal, mas adiciona uma complexidade que acho desnecessária.</p>
<p>Como nosso colega disse, fazer o mapeamento para um ORM não ficará tão simples &#8211; talvez como component ou criar um userType(hibernate).</p>
<p>As maiores vantagens sem dúvida é na hora do desenvolvimento.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: AC de Souza</title>
		<link>http://gc.blog.br/2007/10/03/tiny-types/comment-page-1/#comment-195</link>
		<dc:creator>AC de Souza</dc:creator>
		<pubDate>Thu, 04 Oct 2007 13:23:59 +0000</pubDate>
		<guid isPermaLink="false">http://gc.blog.br/2007/10/03/tiny-types/#comment-195</guid>
		<description>Tiny Types não seria uma forma &quot;extrema&quot; de aplicar o padrão Value Object[1]?

[1]: http://martinfowler.com/bliki/ValueObject.html

[],
AC</description>
		<content:encoded><![CDATA[<p>Tiny Types não seria uma forma &#8220;extrema&#8221; de aplicar o padrão Value Object[1]?</p>
<p>[1]: <a href="http://martinfowler.com/bliki/ValueObject.html" rel="nofollow" onclick="urchinTracker('/outgoing/martinfowler.com/bliki/ValueObject.html?referer=');">http://martinfowler.com/bliki/ValueObject.html</a></p>
<p>[],<br />
AC</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Marcos Silva Pereira</title>
		<link>http://gc.blog.br/2007/10/03/tiny-types/comment-page-1/#comment-194</link>
		<dc:creator>Marcos Silva Pereira</dc:creator>
		<pubDate>Thu, 04 Oct 2007 04:09:44 +0000</pubDate>
		<guid isPermaLink="false">http://gc.blog.br/2007/10/03/tiny-types/#comment-194</guid>
		<description>Esqueci de dizer, alias, pensei nisso agora: esse pode ser um bom caso para aplicar &quot;null objects&quot; (http://thiagoarrais.wordpress.com/2006/09/27/uma-pequena-grande-ideia-2/) para emular os tiny types.

valeuz...</description>
		<content:encoded><![CDATA[<p>Esqueci de dizer, alias, pensei nisso agora: esse pode ser um bom caso para aplicar &#8220;null objects&#8221; (<a href="http://thiagoarrais.wordpress.com/2006/09/27/uma-pequena-grande-ideia-2/" rel="nofollow" onclick="urchinTracker('/outgoing/thiagoarrais.wordpress.com/2006/09/27/uma-pequena-grande-ideia-2/?referer=');">http://thiagoarrais.wordpress.com/2006/09/27/uma-pequena-grande-ideia-2/</a>) para emular os tiny types.</p>
<p>valeuz&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Marcos Silva Pereira</title>
		<link>http://gc.blog.br/2007/10/03/tiny-types/comment-page-1/#comment-193</link>
		<dc:creator>Marcos Silva Pereira</dc:creator>
		<pubDate>Thu, 04 Oct 2007 04:00:49 +0000</pubDate>
		<guid isPermaLink="false">http://gc.blog.br/2007/10/03/tiny-types/#comment-193</guid>
		<description>Guilherme, isso me lembrou esse texto do Fowler:
http://martinfowler.com/ieeeSoftware/whenType.pdf

O problema de tiny types é que eles não se dão bem com um monte de gente por aí (Hibernate + JPA, toneladas de frameworks mvc, etc). Mas somando isso e interfaces fluentes, dá para fazer algumas construções bem interessantes. Curioso para ver o resultado do seu trabalho.

valeuz...</description>
		<content:encoded><![CDATA[<p>Guilherme, isso me lembrou esse texto do Fowler:<br />
<a href="http://martinfowler.com/ieeeSoftware/whenType.pdf" rel="nofollow" onclick="urchinTracker('/outgoing/martinfowler.com/ieeeSoftware/whenType.pdf?referer=');">http://martinfowler.com/ieeeSoftware/whenType.pdf</a></p>
<p>O problema de tiny types é que eles não se dão bem com um monte de gente por aí (Hibernate + JPA, toneladas de frameworks mvc, etc). Mas somando isso e interfaces fluentes, dá para fazer algumas construções bem interessantes. Curioso para ver o resultado do seu trabalho.</p>
<p>valeuz&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Rafael de F. Ferreira</title>
		<link>http://gc.blog.br/2007/10/03/tiny-types/comment-page-1/#comment-192</link>
		<dc:creator>Rafael de F. Ferreira</dc:creator>
		<pubDate>Wed, 03 Oct 2007 21:53:31 +0000</pubDate>
		<guid isPermaLink="false">http://gc.blog.br/2007/10/03/tiny-types/#comment-192</guid>
		<description>Interessante. Em Scala é razoávelmente comum usar &lt;a href=&quot;http://www.scala-lang.org/intro/caseclasses.html&quot; rel=&quot;nofollow&quot;&gt;case classes&lt;/a&gt; para implementar estes &quot;Tiny Types&quot;.</description>
		<content:encoded><![CDATA[<p>Interessante. Em Scala é razoávelmente comum usar <a href="http://www.scala-lang.org/intro/caseclasses.html" rel="nofollow" onclick="urchinTracker('/outgoing/www.scala-lang.org/intro/caseclasses.html?referer=');">case classes</a> para implementar estes &#8220;Tiny Types&#8221;.</p>
]]></content:encoded>
	</item>
</channel>
</rss>

