<?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: Padrões não são gambiarras</title>
	<atom:link href="http://www.milfont.org/blog/archives/111/feed" rel="self" type="application/rss+xml" />
	<link>http://www.milfont.org/blog/archives/111</link>
	<description>Ultrapassando os limites da web!</description>
	<lastBuildDate>Fri, 10 Feb 2012 06:40:47 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
	<item>
		<title>By: CMilfont &#187; O que acham do nível superior?</title>
		<link>http://www.milfont.org/blog/archives/111/comment-page-1#comment-15640</link>
		<dc:creator>CMilfont &#187; O que acham do nível superior?</dc:creator>
		<pubDate>Fri, 18 Apr 2008 11:58:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.milfont.org/blog/archives/111#comment-15640</guid>
		<description>[...] Diploma n&#227;o garante conhecimento, tem muitos que possuem diploma e n&#227;o conseguem distinguir o b&#225;sico. http://www.milfont.org/blog/archives/111 [...]</description>
		<content:encoded><![CDATA[<p>[...] Diploma n&atilde;o garante conhecimento, tem muitos que possuem diploma e n&atilde;o conseguem distinguir o b&aacute;sico. <a href="http://www.milfont.org/blog/archives/111" rel="nofollow">http://www.milfont.org/blog/archives/111</a> [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: CMilfont &#187; Sou Programador!</title>
		<link>http://www.milfont.org/blog/archives/111/comment-page-1#comment-15637</link>
		<dc:creator>CMilfont &#187; Sou Programador!</dc:creator>
		<pubDate>Fri, 18 Apr 2008 11:54:21 +0000</pubDate>
		<guid isPermaLink="false">http://www.milfont.org/blog/archives/111#comment-15637</guid>
		<description>[...] O academicismo as vezes &#233; ben&#233;fico, te desregula da pr&#243;pria n&#227;o-regra, evita que voce considere padr&#245;es como gambiarras e abres os olhos do programador para quest&#245;es mais profundas. [...]</description>
		<content:encoded><![CDATA[<p>[...] O academicismo as vezes &eacute; ben&eacute;fico, te desregula da pr&oacute;pria n&atilde;o-regra, evita que voce considere padr&otilde;es como gambiarras e abres os olhos do programador para quest&otilde;es mais profundas. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: CMilfont &#187; Porque usamos Frameworks?</title>
		<link>http://www.milfont.org/blog/archives/111/comment-page-1#comment-11044</link>
		<dc:creator>CMilfont &#187; Porque usamos Frameworks?</dc:creator>
		<pubDate>Thu, 19 Jul 2007 18:10:06 +0000</pubDate>
		<guid isPermaLink="false">http://www.milfont.org/blog/archives/111#comment-11044</guid>
		<description>[...] Vamos exemplificar em alguns contextos. Os conceitos s&#227;o importantes para a escolha dos frameworks necess&#225;rios, quando voce desconhece ou relega isso fica muito mais dif&#237;cil ter o feeling necess&#225;rio para avaliar uma situa&#231;&#227;o como essas. [...]</description>
		<content:encoded><![CDATA[<p>[...] Vamos exemplificar em alguns contextos. Os conceitos s&atilde;o importantes para a escolha dos frameworks necess&aacute;rios, quando voce desconhece ou relega isso fica muito mais dif&iacute;cil ter o feeling necess&aacute;rio para avaliar uma situa&ccedil;&atilde;o como essas. [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: cmilfont</title>
		<link>http://www.milfont.org/blog/archives/111/comment-page-1#comment-2567</link>
		<dc:creator>cmilfont</dc:creator>
		<pubDate>Tue, 13 Mar 2007 15:03:16 +0000</pubDate>
		<guid isPermaLink="false">http://www.milfont.org/blog/archives/111#comment-2567</guid>
		<description>&quot;Padrões não são a solução, são uma solução. Outra solução é que a linguagem resolva esse problema para você e forneça uma construção idiomática para isso, como no caso dos objetos de 1972 que viraram as classes, objetos, métodos e construtores de 2007.&quot;

Mas não deixa de ser um padrão, não é porque o padrão passou a fazer parte da linguagem que ele deixou de se padrão, apenas está encapsulado, se por algum erro de implementação voce precisar corrigir algo voce sabe como funciona porque está catalogado.

&quot;Toda linguagem requer um padrão, até Lisp tem seu Dialeto de Domínio (não adianta procurar esse nos catálogos, batizei agora). A sacada é que eles não precisam ser padrões para sempre, a linguagem pode evoluir para não precisar mais de alguns deles. Mas, como diria o Tapajós, não existe canivete suíço. Nem mesmo os padrões são canivetes suíços. Muito pelo contrário: são soluções (em geral muito boas quando chegam ao ponto de serem chamadas de padrões) para problemas específicos.&quot;

aí que está o ponto, como diria nosso presidente estamos chegando no &quot;ponto G&quot; da questão :)
Não é porque uma determinada linguagem embutiu um determinado padrão que esse padrão deixou de existir.
Não é porque uma determinada linguagem NÃO embutiu um determinado padrão que ela está errada, é que não compensa na maioria dos casos por conta de sua arquitetura, essa linguagem embutir esse padrão. Mas o padrão é para sempre, se ninguem mais o utilizará é outra história (que em informática é quase impossível, quase, padrões sempre vem e vão, vivenciei muito disso)


&quot;Os padrões são muito importantes à medida que nos ajudam a identificar um problema comum e ao mesmo tempo fornecem uma solução, mas não devem ser vistos como soluções definitivas. Isso iria paralizar completamente a evolução. E não é isso que queremos, certo? &quot;

São soluções definitivas para o que ele é catalogado, a diferença é que novos padrões vão surgindo e outros vão sendo relegados, mas os que são relegados hoje podem ser resgatados no futuro, como por exemplo o uso do singleton e do factory que evidenciei no artigo, outro exemplo comum é na construção de OS, padrões de implementação de gerenciamento de memória, disco e processos vão e vem dependendo da arquitetura da máquina e do propósito desejado.

Falamos as mesmas coisas, só que com um enfoque diferente, acredito que um ponto comum seria chamar seu artigo de &quot;Cuidado para um padrão não se tornar uma gambiarra&quot;.</description>
		<content:encoded><![CDATA[<p>&#8220;Padrões não são a solução, são uma solução. Outra solução é que a linguagem resolva esse problema para você e forneça uma construção idiomática para isso, como no caso dos objetos de 1972 que viraram as classes, objetos, métodos e construtores de 2007.&#8221;</p>
<p>Mas não deixa de ser um padrão, não é porque o padrão passou a fazer parte da linguagem que ele deixou de se padrão, apenas está encapsulado, se por algum erro de implementação voce precisar corrigir algo voce sabe como funciona porque está catalogado.</p>
<p>&#8220;Toda linguagem requer um padrão, até Lisp tem seu Dialeto de Domínio (não adianta procurar esse nos catálogos, batizei agora). A sacada é que eles não precisam ser padrões para sempre, a linguagem pode evoluir para não precisar mais de alguns deles. Mas, como diria o Tapajós, não existe canivete suíço. Nem mesmo os padrões são canivetes suíços. Muito pelo contrário: são soluções (em geral muito boas quando chegam ao ponto de serem chamadas de padrões) para problemas específicos.&#8221;</p>
<p>aí que está o ponto, como diria nosso presidente estamos chegando no &#8220;ponto G&#8221; da questão <img src='http://www.milfont.org/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
Não é porque uma determinada linguagem embutiu um determinado padrão que esse padrão deixou de existir.<br />
Não é porque uma determinada linguagem NÃO embutiu um determinado padrão que ela está errada, é que não compensa na maioria dos casos por conta de sua arquitetura, essa linguagem embutir esse padrão. Mas o padrão é para sempre, se ninguem mais o utilizará é outra história (que em informática é quase impossível, quase, padrões sempre vem e vão, vivenciei muito disso)</p>
<p>&#8220;Os padrões são muito importantes à medida que nos ajudam a identificar um problema comum e ao mesmo tempo fornecem uma solução, mas não devem ser vistos como soluções definitivas. Isso iria paralizar completamente a evolução. E não é isso que queremos, certo? &#8221;</p>
<p>São soluções definitivas para o que ele é catalogado, a diferença é que novos padrões vão surgindo e outros vão sendo relegados, mas os que são relegados hoje podem ser resgatados no futuro, como por exemplo o uso do singleton e do factory que evidenciei no artigo, outro exemplo comum é na construção de OS, padrões de implementação de gerenciamento de memória, disco e processos vão e vem dependendo da arquitetura da máquina e do propósito desejado.</p>
<p>Falamos as mesmas coisas, só que com um enfoque diferente, acredito que um ponto comum seria chamar seu artigo de &#8220;Cuidado para um padrão não se tornar uma gambiarra&#8221;.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Thiago Arrais</title>
		<link>http://www.milfont.org/blog/archives/111/comment-page-1#comment-2564</link>
		<dc:creator>Thiago Arrais</dc:creator>
		<pubDate>Tue, 13 Mar 2007 14:25:02 +0000</pubDate>
		<guid isPermaLink="false">http://www.milfont.org/blog/archives/111#comment-2564</guid>
		<description>Padrões não são &lt;em&gt;a&lt;/em&gt; solução, são &lt;em&gt;uma&lt;/em&gt; solução. Outra solução é que a linguagem resolva esse problema para você e forneça uma construção idiomática para isso, como no caso dos &lt;a href=&quot;http://blog.plover.com/prog/design-patterns.html&quot; rel=&quot;nofollow&quot;&gt;objetos de 1972&lt;/a&gt; que viraram as classes, objetos, métodos e construtores de 2007.

Toda linguagem requer um padrão, até Lisp tem seu Dialeto de Domínio (não adianta procurar esse nos catálogos, batizei agora). A sacada é que eles não precisam ser padrões para sempre, a linguagem pode evoluir para não precisar mais de alguns deles. Mas, como diria o Tapajós, não existe canivete suíço. Nem mesmo os padrões são canivetes suíços. Muito pelo contrário: são soluções (em geral muito boas quando chegam ao ponto de serem chamadas de padrões) para problemas específicos.

Os padrões são muito importantes à medida que nos ajudam a identificar um problema comum e ao mesmo tempo fornecem uma solução, mas não devem ser vistos como soluções definitivas. Isso iria paralizar completamente a evolução. E não é isso que queremos, certo?</description>
		<content:encoded><![CDATA[<p>Padrões não são <em>a</em> solução, são <em>uma</em> solução. Outra solução é que a linguagem resolva esse problema para você e forneça uma construção idiomática para isso, como no caso dos <a href="http://blog.plover.com/prog/design-patterns.html" rel="nofollow">objetos de 1972</a> que viraram as classes, objetos, métodos e construtores de 2007.</p>
<p>Toda linguagem requer um padrão, até Lisp tem seu Dialeto de Domínio (não adianta procurar esse nos catálogos, batizei agora). A sacada é que eles não precisam ser padrões para sempre, a linguagem pode evoluir para não precisar mais de alguns deles. Mas, como diria o Tapajós, não existe canivete suíço. Nem mesmo os padrões são canivetes suíços. Muito pelo contrário: são soluções (em geral muito boas quando chegam ao ponto de serem chamadas de padrões) para problemas específicos.</p>
<p>Os padrões são muito importantes à medida que nos ajudam a identificar um problema comum e ao mesmo tempo fornecem uma solução, mas não devem ser vistos como soluções definitivas. Isso iria paralizar completamente a evolução. E não é isso que queremos, certo?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: cmilfont</title>
		<link>http://www.milfont.org/blog/archives/111/comment-page-1#comment-2561</link>
		<dc:creator>cmilfont</dc:creator>
		<pubDate>Tue, 13 Mar 2007 13:34:59 +0000</pubDate>
		<guid isPermaLink="false">http://www.milfont.org/blog/archives/111#comment-2561</guid>
		<description>Para deixar mais claro ainda, Dependency injection e Orientação a objetos são design patterns, a diferença é o foco/contexto onde são aplicados. São modelos de desenho a um determinado requisito identificado.</description>
		<content:encoded><![CDATA[<p>Para deixar mais claro ainda, Dependency injection e Orientação a objetos são design patterns, a diferença é o foco/contexto onde são aplicados. São modelos de desenho a um determinado requisito identificado.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: cmilfont</title>
		<link>http://www.milfont.org/blog/archives/111/comment-page-1#comment-2560</link>
		<dc:creator>cmilfont</dc:creator>
		<pubDate>Tue, 13 Mar 2007 13:31:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.milfont.org/blog/archives/111#comment-2560</guid>
		<description>Thiago, acho que o ponto de entender está aqui: &quot;não são soluções alternativas nem complementares&quot;. São simplesmente a solução.
Todo desenvolvimento/linguagem requer um padrão, nada flutua no vácuo nesse sentido, se voce senta e abre um notepad para criar algo voce no minimo seguirá um padrão, ninguem desenvolve nada sem um padrão. É essa a diferença que creio que voces não entenderam.

Quando voce cria um domain model por exmeplo vboce está seguindo um padrão, se voce implenta uma linguagem seja de propósito geral ou uma DSL voce criou e/ou segue um padrão.</description>
		<content:encoded><![CDATA[<p>Thiago, acho que o ponto de entender está aqui: &#8220;não são soluções alternativas nem complementares&#8221;. São simplesmente a solução.<br />
Todo desenvolvimento/linguagem requer um padrão, nada flutua no vácuo nesse sentido, se voce senta e abre um notepad para criar algo voce no minimo seguirá um padrão, ninguem desenvolve nada sem um padrão. É essa a diferença que creio que voces não entenderam.</p>
<p>Quando voce cria um domain model por exmeplo vboce está seguindo um padrão, se voce implenta uma linguagem seja de propósito geral ou uma DSL voce criou e/ou segue um padrão.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: cmilfont</title>
		<link>http://www.milfont.org/blog/archives/111/comment-page-1#comment-2559</link>
		<dc:creator>cmilfont</dc:creator>
		<pubDate>Tue, 13 Mar 2007 13:27:08 +0000</pubDate>
		<guid isPermaLink="false">http://www.milfont.org/blog/archives/111#comment-2559</guid>
		<description>Thiago e Marcos, acho que não fui claro no meu post, futuramente quando sobrar um tempinho vou especificar um artigo melhor sobre padrões.
O que quero deixar claro é que padrões não podem ser chamados de gambiarra ou outro nome qualquer porque são simplesmente... &quot;padrões&quot;, normas estabelecidas para se resolver um problema identificado. 
Pode existir mais de um padrão para resolver um mesmo problema em u m mesmo contexto, não se prendam apenas ao clássico conhecimento sobre padrões como GoF ou PoEAA por exemplo.
Em resumo, padrões são como as coisas são feitas e gambiarras são emendos que são provocados pelo mau uso dos padrões ou a não compreensão.
Não existe isso de gambiarra boa, se é gambiarra não é padrão.
Padrão é a norma, é como se deve fazer.</description>
		<content:encoded><![CDATA[<p>Thiago e Marcos, acho que não fui claro no meu post, futuramente quando sobrar um tempinho vou especificar um artigo melhor sobre padrões.<br />
O que quero deixar claro é que padrões não podem ser chamados de gambiarra ou outro nome qualquer porque são simplesmente&#8230; &#8220;padrões&#8221;, normas estabelecidas para se resolver um problema identificado.<br />
Pode existir mais de um padrão para resolver um mesmo problema em u m mesmo contexto, não se prendam apenas ao clássico conhecimento sobre padrões como GoF ou PoEAA por exemplo.<br />
Em resumo, padrões são como as coisas são feitas e gambiarras são emendos que são provocados pelo mau uso dos padrões ou a não compreensão.<br />
Não existe isso de gambiarra boa, se é gambiarra não é padrão.<br />
Padrão é a norma, é como se deve fazer.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Thiago Arrais</title>
		<link>http://www.milfont.org/blog/archives/111/comment-page-1#comment-2537</link>
		<dc:creator>Thiago Arrais</dc:creator>
		<pubDate>Tue, 13 Mar 2007 01:15:54 +0000</pubDate>
		<guid isPermaLink="false">http://www.milfont.org/blog/archives/111#comment-2537</guid>
		<description>Marcos, algumas outras opções são &quot;soluções técnicas alternativas&quot;, &quot;técnicas complementares&quot; ou &quot;soluções de fronteira&quot;. Tenho certeza que podemos chegar a alguns termos mais politicamente corretos ou corporativos se nos concentrarmos nisso.</description>
		<content:encoded><![CDATA[<p>Marcos, algumas outras opções são &#8220;soluções técnicas alternativas&#8221;, &#8220;técnicas complementares&#8221; ou &#8220;soluções de fronteira&#8221;. Tenho certeza que podemos chegar a alguns termos mais politicamente corretos ou corporativos se nos concentrarmos nisso.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Marcos Tapajos</title>
		<link>http://www.milfont.org/blog/archives/111/comment-page-1#comment-2523</link>
		<dc:creator>Marcos Tapajos</dc:creator>
		<pubDate>Mon, 12 Mar 2007 23:34:36 +0000</pubDate>
		<guid isPermaLink="false">http://www.milfont.org/blog/archives/111#comment-2523</guid>
		<description>CMilfont, compartilhamos opiniões bem parecidas com relação a saber identificar que as linguagens tem propósitos diferentes e não são balas-de-prata. Já estava para escrever um post sobre isso tem muito tempo só que o post do Thiago Arrais me motivou a fazer isso logo e resolvi pegar o gancho dos patterns para servir como argumento que nenhuma linguagem é perfeita e que as supostas falhas mostram exactamente o propósito de cada linguagem.
Achei muito bom o seu post pois mostra claramente que existem gambiarras boas e são delas que surgem os novos conceitos e as novas linguagens. Como eu disse esse é um termo bem pejorativo, que tal chamarmos os patterns de mecanismos de contorno ?
Brincadeiras a parte entendi seu ponto de vista e não deixo de te dar razão.

Um abraço
Tapajós</description>
		<content:encoded><![CDATA[<p>CMilfont, compartilhamos opiniões bem parecidas com relação a saber identificar que as linguagens tem propósitos diferentes e não são balas-de-prata. Já estava para escrever um post sobre isso tem muito tempo só que o post do Thiago Arrais me motivou a fazer isso logo e resolvi pegar o gancho dos patterns para servir como argumento que nenhuma linguagem é perfeita e que as supostas falhas mostram exactamente o propósito de cada linguagem.<br />
Achei muito bom o seu post pois mostra claramente que existem gambiarras boas e são delas que surgem os novos conceitos e as novas linguagens. Como eu disse esse é um termo bem pejorativo, que tal chamarmos os patterns de mecanismos de contorno ?<br />
Brincadeiras a parte entendi seu ponto de vista e não deixo de te dar razão.</p>
<p>Um abraço<br />
Tapajós</p>
]]></content:encoded>
	</item>
</channel>
</rss>

