<?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>Comentários sobre: Vale a pena abstrair? &#8211; Parte 2</title>
	<atom:link href="http://blog.michaelnascimento.com.br/2006/09/22/vale-a-pena-abstrair-parte-2/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.michaelnascimento.com.br/2006/09/22/vale-a-pena-abstrair-parte-2/</link>
	<description>Michael Nascimento Santos em pt-BR</description>
	<lastBuildDate>Mon, 13 Apr 2015 12:20:08 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>Por: blog.caelum.com.br &#187; Design Patterns: um mau sinal?</title>
		<link>http://blog.michaelnascimento.com.br/2006/09/22/vale-a-pena-abstrair-parte-2/#comment-292</link>
		<dc:creator>blog.caelum.com.br &#187; Design Patterns: um mau sinal?</dc:creator>
		<pubDate>Mon, 18 Dec 2006 05:31:57 +0000</pubDate>
		<guid isPermaLink="false">http://blog.michaelnascimento.com.br/2006/09/22/vale-a-pena-abstrair-parte-2/#comment-292</guid>
		<description>[...] Obviamente não estou pregando a total extinção de todos esses patterns (muito menos o DAO!), apenas lembrando que devemos medir muito bem a necessidade de criar mais classes e mais abstrações, em vez de atacar o problema com mais simplicidade, como o Michael Nascimento também já blogou (duas vezes). [...]</description>
		<content:encoded><![CDATA[<p>[...] Obviamente não estou pregando a total extinção de todos esses patterns (muito menos o DAO!), apenas lembrando que devemos medir muito bem a necessidade de criar mais classes e mais abstrações, em vez de atacar o problema com mais simplicidade, como o Michael Nascimento também já blogou (duas vezes). [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Ramon Chiara</title>
		<link>http://blog.michaelnascimento.com.br/2006/09/22/vale-a-pena-abstrair-parte-2/#comment-154</link>
		<dc:creator>Ramon Chiara</dc:creator>
		<pubDate>Tue, 14 Nov 2006 11:35:56 +0000</pubDate>
		<guid isPermaLink="false">http://blog.michaelnascimento.com.br/2006/09/22/vale-a-pena-abstrair-parte-2/#comment-154</guid>
		<description>Creio que o que vc já disse no 1o post é certo!
Não seja arquiteto/programador vidente, KISS, etc. etc. etc... :-)
No entanto faltou o ponto mais importante disso tudo: como vc vai saber que sua aplicação precisa ou não de separação das interfaces? Veja, não só DAO, mas qquer uma (bom, vc já tinha dito isso rsrs)
Nisso o TDD (independentemente de XP) ajuda!
Se vc ir montando o teste, programando do jeito que vc quer que a coisa funcione, a arquitetura vai surgindo de uma forma muito bacana, onde será testável e simples. Provavelmente só vai surgir o DAO quando vc precisar mesmo. Lógico que tudo isso requer prática e experiência, como tudo na vida ;-)
[]s
PS: não estou aqui pregando TDD, hein! :-) Só estou dizendo que é uma opção para que vc descubra em que pontos sua aplicação vai precisar de separação das interfaces!</description>
		<content:encoded><![CDATA[<p>Creio que o que vc já disse no 1o post é certo!<br />
Não seja arquiteto/programador vidente, KISS, etc. etc. etc&#8230; :-)<br />
No entanto faltou o ponto mais importante disso tudo: como vc vai saber que sua aplicação precisa ou não de separação das interfaces? Veja, não só DAO, mas qquer uma (bom, vc já tinha dito isso rsrs)<br />
Nisso o TDD (independentemente de XP) ajuda!<br />
Se vc ir montando o teste, programando do jeito que vc quer que a coisa funcione, a arquitetura vai surgindo de uma forma muito bacana, onde será testável e simples. Provavelmente só vai surgir o DAO quando vc precisar mesmo. Lógico que tudo isso requer prática e experiência, como tudo na vida ;-)<br />
[]s<br />
PS: não estou aqui pregando TDD, hein! :-) Só estou dizendo que é uma opção para que vc descubra em que pontos sua aplicação vai precisar de separação das interfaces!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Thiago R S</title>
		<link>http://blog.michaelnascimento.com.br/2006/09/22/vale-a-pena-abstrair-parte-2/#comment-94</link>
		<dc:creator>Thiago R S</dc:creator>
		<pubDate>Tue, 26 Sep 2006 17:02:58 +0000</pubDate>
		<guid isPermaLink="false">http://blog.michaelnascimento.com.br/2006/09/22/vale-a-pena-abstrair-parte-2/#comment-94</guid>
		<description>Olá,

muito interessante estes posts sobre abstração de DAO&#039;s. Quero dizer que estou com vocês. A máxima abstração que costumo chegar é criar uma interface para o DAO e sua respectiva implementação. Isso quando devo usar DAO&#039;s.

Para o restante dos casos, estou evitando o pattern discutido. Prefiro colocar logo o hibernateTemplate (Spring) ou EntityManager (JPA) na minha camada de serviço. Depois garanto se tudo funca com um teste de integração. Testes unitários apenas em trechos que exigem uma atenção especial.

Também tenho pouco interesse por DAO&#039;s genéricos, mas isso é questão de gosto.

Abraços
Thiago</description>
		<content:encoded><![CDATA[<p>Olá,</p>
<p>muito interessante estes posts sobre abstração de DAO&#8217;s. Quero dizer que estou com vocês. A máxima abstração que costumo chegar é criar uma interface para o DAO e sua respectiva implementação. Isso quando devo usar DAO&#8217;s.</p>
<p>Para o restante dos casos, estou evitando o pattern discutido. Prefiro colocar logo o hibernateTemplate (Spring) ou EntityManager (JPA) na minha camada de serviço. Depois garanto se tudo funca com um teste de integração. Testes unitários apenas em trechos que exigem uma atenção especial.</p>
<p>Também tenho pouco interesse por DAO&#8217;s genéricos, mas isso é questão de gosto.</p>
<p>Abraços<br />
Thiago</p>
]]></content:encoded>
	</item>
	<item>
		<title>Por: Paulo Silveira</title>
		<link>http://blog.michaelnascimento.com.br/2006/09/22/vale-a-pena-abstrair-parte-2/#comment-91</link>
		<dc:creator>Paulo Silveira</dc:creator>
		<pubDate>Tue, 26 Sep 2006 03:00:58 +0000</pubDate>
		<guid isPermaLink="false">http://blog.michaelnascimento.com.br/2006/09/22/vale-a-pena-abstrair-parte-2/#comment-91</guid>
		<description>&quot;Por exemplo, em projetos que usam DAO extensivamente, já vi várias vezes classes de negócio que simplesmente delegavam para os DAOs, sem adicionar lógica nenhuma...&quot; - eu vejo isso _sempre_, dia e noite! mais ainda, antes da classe de negócio tem de passar por uns 3 delegates diferentes, todos interfaceados...</description>
		<content:encoded><![CDATA[<p>&#8220;Por exemplo, em projetos que usam DAO extensivamente, já vi várias vezes classes de negócio que simplesmente delegavam para os DAOs, sem adicionar lógica nenhuma&#8230;&#8221; &#8211; eu vejo isso _sempre_, dia e noite! mais ainda, antes da classe de negócio tem de passar por uns 3 delegates diferentes, todos interfaceados&#8230;</p>
]]></content:encoded>
	</item>
</channel>
</rss>
