<?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"
	>
<channel>
	<title>Comments for SubMundo Java</title>
	<atom:link href="http://submundojava.com.br/wordpress/comments/feed/" rel="self" type="application/rss+xml" />
	<link>http://submundojava.com.br/wordpress</link>
	<description>Um pouco de tudo, mas tecnologia acima de tudo!</description>
	<pubDate>Wed, 10 Mar 2010 10:04:13 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.2</generator>
		<item>
		<title>Comment on Parte 2: Explorando padrões e princípios para as novas gerações de soluções SOA. by David Lins</title>
		<link>http://submundojava.com.br/wordpress/2010/02/23/parte-2-explorando-padroes-e-principios-para-as-novas-geracoes-de-solucoes-soa/#comment-1046</link>
		<dc:creator>David Lins</dc:creator>
		<pubDate>Tue, 23 Feb 2010 22:18:00 +0000</pubDate>
		<guid isPermaLink="false">http://submundojava.com.br/wordpress/?p=93#comment-1046</guid>
		<description>Paulo,

Muito bom artigo, demonstrando que SOA não é dependente de apenas uma Tecnologia. Quantas vezes ao perguntar paras as pessoa o que é SOA elas falam que é WebService. Mas SOA também não é só ferramentas, frameworks ou código fonte. É necessário um forte comprometimento do donos do negócio, definindo o serviços que realmente possuem valores agregados, senão ao invés de SOA, iremos ter apenas um sistema de integração entre sistemas.</description>
		<content:encoded><![CDATA[<p>Paulo,</p>
<p>Muito bom artigo, demonstrando que SOA não é dependente de apenas uma Tecnologia. Quantas vezes ao perguntar paras as pessoa o que é SOA elas falam que é WebService. Mas SOA também não é só ferramentas, frameworks ou código fonte. É necessário um forte comprometimento do donos do negócio, definindo o serviços que realmente possuem valores agregados, senão ao invés de SOA, iremos ter apenas um sistema de integração entre sistemas.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Java Server Faces 1.2 Hello World by Lzui Henrique</title>
		<link>http://submundojava.com.br/wordpress/2007/08/27/java-server-faces-12-hello-world/#comment-1012</link>
		<dc:creator>Lzui Henrique</dc:creator>
		<pubDate>Thu, 14 Jan 2010 17:22:22 +0000</pubDate>
		<guid isPermaLink="false">http://submundojava.com.br/wordpress/2007/08/27/java-server-faces-12-hello-world/#comment-1012</guid>
		<description>Parabéns pelo Tuto. 
Muito bom para iniciante no mundo faces.</description>
		<content:encoded><![CDATA[<p>Parabéns pelo Tuto.<br />
Muito bom para iniciante no mundo faces.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Fluent Regex Composer by Ricardo Redder</title>
		<link>http://submundojava.com.br/wordpress/2009/07/26/fluent-regex-composer/#comment-931</link>
		<dc:creator>Ricardo Redder</dc:creator>
		<pubDate>Tue, 04 Aug 2009 18:43:34 +0000</pubDate>
		<guid isPermaLink="false">http://submundojava.com.br/wordpress/?p=30#comment-931</guid>
		<description>Bem interessante a idéia, particularmente gosto bastante de APIs fluentes, e esta traz uma boa legibilidade a códigos envolvendo expressões regulares, acho que pode ajudar programadores que tenham menos intimidade com expressões regulares...

Abraços!</description>
		<content:encoded><![CDATA[<p>Bem interessante a idéia, particularmente gosto bastante de APIs fluentes, e esta traz uma boa legibilidade a códigos envolvendo expressões regulares, acho que pode ajudar programadores que tenham menos intimidade com expressões regulares&#8230;</p>
<p>Abraços!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Fluent Regex Composer by Paulo R. A. Sales</title>
		<link>http://submundojava.com.br/wordpress/2009/07/26/fluent-regex-composer/#comment-929</link>
		<dc:creator>Paulo R. A. Sales</dc:creator>
		<pubDate>Tue, 28 Jul 2009 01:19:55 +0000</pubDate>
		<guid isPermaLink="false">http://submundojava.com.br/wordpress/?p=30#comment-929</guid>
		<description>Oi Henrique,

Obrigado pela resposta!

Tudo que você menciona é a pura verdade, para bom programador meia palavra basta! rs

Fazendo jus a frase "Use com parcimónia!" rs

Abração,
Paulo.</description>
		<content:encoded><![CDATA[<p>Oi Henrique,</p>
<p>Obrigado pela resposta!</p>
<p>Tudo que você menciona é a pura verdade, para bom programador meia palavra basta! rs</p>
<p>Fazendo jus a frase &#8220;Use com parcimónia!&#8221; rs</p>
<p>Abração,<br />
Paulo.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Fluent Regex Composer by Henrique Lima</title>
		<link>http://submundojava.com.br/wordpress/2009/07/26/fluent-regex-composer/#comment-928</link>
		<dc:creator>Henrique Lima</dc:creator>
		<pubDate>Tue, 28 Jul 2009 00:35:19 +0000</pubDate>
		<guid isPermaLink="false">http://submundojava.com.br/wordpress/?p=30#comment-928</guid>
		<description>Pedro / Paulo,  concordo com os argumentos apresentados referentes a performance. Entretanto, creio que é um problema simples de ser solucionado, uma vez que tanto na maneira fluente quanto na maneira tradicional o maior custo é obter o objeto Pattern (Pattern.compile()), a partir daí, tanto faz.

Por exemplo:

public class RegexService {
   
     private Pattern pattern;

     public void init() {
         RegexComposer composer = ...
         ...
         pattern = composer.compile();
    }

    public boolean validate(String s) {
          return pattern.matcher(s).matches();       
   }
    

}

Este tipo de abordagem é muito comum em ambientes gerenciados (exemplos disso são o spring (init-method) e EJB (@PostConstruct)). Além disso, após o pattern.compile() os objetos que compôe o RegexComposer serão elegíveis a serem coletados pelo GC. Desta forma, você tem a legibilidade da maneira fluente e a performance só será maior (na maneira tradicional) ao executar o init, que será executado apenas uma única vez. É claro que se você precisa de algo muito simples, realmente não iria valer a pena, mas em casos mais complicados a legibilidade e a produtividade que uma API dessa pode proporcionar é um argumento que, no mínimo, deve ser levado em consideração na hora da escolha.

Obrigado pelos comentários.

Abraços.</description>
		<content:encoded><![CDATA[<p>Pedro / Paulo,  concordo com os argumentos apresentados referentes a performance. Entretanto, creio que é um problema simples de ser solucionado, uma vez que tanto na maneira fluente quanto na maneira tradicional o maior custo é obter o objeto Pattern (Pattern.compile()), a partir daí, tanto faz.</p>
<p>Por exemplo:</p>
<p>public class RegexService {</p>
<p>     private Pattern pattern;</p>
<p>     public void init() {<br />
         RegexComposer composer = &#8230;<br />
         &#8230;<br />
         pattern = composer.compile();<br />
    }</p>
<p>    public boolean validate(String s) {<br />
          return pattern.matcher(s).matches();<br />
   }</p>
<p>}</p>
<p>Este tipo de abordagem é muito comum em ambientes gerenciados (exemplos disso são o spring (init-method) e EJB (@PostConstruct)). Além disso, após o pattern.compile() os objetos que compôe o RegexComposer serão elegíveis a serem coletados pelo GC. Desta forma, você tem a legibilidade da maneira fluente e a performance só será maior (na maneira tradicional) ao executar o init, que será executado apenas uma única vez. É claro que se você precisa de algo muito simples, realmente não iria valer a pena, mas em casos mais complicados a legibilidade e a produtividade que uma API dessa pode proporcionar é um argumento que, no mínimo, deve ser levado em consideração na hora da escolha.</p>
<p>Obrigado pelos comentários.</p>
<p>Abraços.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Fluent Regex Composer by Paulo R. A. Sales</title>
		<link>http://submundojava.com.br/wordpress/2009/07/26/fluent-regex-composer/#comment-927</link>
		<dc:creator>Paulo R. A. Sales</dc:creator>
		<pubDate>Mon, 27 Jul 2009 21:58:46 +0000</pubDate>
		<guid isPermaLink="false">http://submundojava.com.br/wordpress/?p=30#comment-927</guid>
		<description>Excelente artigo Henrique,

Meus parabéns, gostei da escrita.

A respeito do assunto, que é um tanto controverso, tenho a dizer que este artigo ficou muito bom para demonstrar o uso de uma API fluente. Mas acredito ser inviável utilizá-la para compor uma expressão regular.

Os argumentos que o Pedro questionou acima tem fundamento, principalmente pelo fato do "OverLoad" necessário para se mapear as características de um linguagem de expressão regular em uma API fluente.

Pensando sobre o assunto acredito que seja um problema grande utilizar expressões regulares, pela dificuldade que elas trazem em sua compreensão. 

Não tenho uma opinião de qual maneira devemos implementar uma expressão regular para obter o melhor dos mundos, apenas estou tendo uma visão crítica sobre seu artigo. Espero que me entenda. rs

Grande abraço,
Paulo.</description>
		<content:encoded><![CDATA[<p>Excelente artigo Henrique,</p>
<p>Meus parabéns, gostei da escrita.</p>
<p>A respeito do assunto, que é um tanto controverso, tenho a dizer que este artigo ficou muito bom para demonstrar o uso de uma API fluente. Mas acredito ser inviável utilizá-la para compor uma expressão regular.</p>
<p>Os argumentos que o Pedro questionou acima tem fundamento, principalmente pelo fato do &#8220;OverLoad&#8221; necessário para se mapear as características de um linguagem de expressão regular em uma API fluente.</p>
<p>Pensando sobre o assunto acredito que seja um problema grande utilizar expressões regulares, pela dificuldade que elas trazem em sua compreensão. </p>
<p>Não tenho uma opinião de qual maneira devemos implementar uma expressão regular para obter o melhor dos mundos, apenas estou tendo uma visão crítica sobre seu artigo. Espero que me entenda. rs</p>
<p>Grande abraço,<br />
Paulo.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Fluent Regex Composer by Pedro Oliveira</title>
		<link>http://submundojava.com.br/wordpress/2009/07/26/fluent-regex-composer/#comment-926</link>
		<dc:creator>Pedro Oliveira</dc:creator>
		<pubDate>Mon, 27 Jul 2009 14:15:27 +0000</pubDate>
		<guid isPermaLink="false">http://submundojava.com.br/wordpress/?p=30#comment-926</guid>
		<description>Bem interessante Henrique, 

Acho a ideia viável principalmente pelo motivo que você mesmo citou, o programador não precisa conhecer a fundo expressões regulares para montar e principalmente LER/ANALISAR uma expressão.

Mas tenho algumas questões a levantar:

Acho que quando optamos por usar esse tipo de API temos que levar em consideração que estudar a API será mais rápido do que entender como escrever a sintax da expressão regular, de toda forma o maior esforço ao criar a expressão é identificar o padrão a ser procurado.

Outra questão que acho que deve ser estudada é o desempenho, expressões regulares por sí só já são custosas em termos de sistema e quanto maior a complexidade maior o tempo de processamento, dependendo do caso acredito que é mais interessante decompor a expressão e depois concatenar para montar o Pattern do que utilizar uma API fluente, principalmente quando vc tem certeza que o código que está sendo criado vai precisar de pouca manutenção no futuro.

Bom trabalho, 

Abraços
Pedro.</description>
		<content:encoded><![CDATA[<p>Bem interessante Henrique, </p>
<p>Acho a ideia viável principalmente pelo motivo que você mesmo citou, o programador não precisa conhecer a fundo expressões regulares para montar e principalmente LER/ANALISAR uma expressão.</p>
<p>Mas tenho algumas questões a levantar:</p>
<p>Acho que quando optamos por usar esse tipo de API temos que levar em consideração que estudar a API será mais rápido do que entender como escrever a sintax da expressão regular, de toda forma o maior esforço ao criar a expressão é identificar o padrão a ser procurado.</p>
<p>Outra questão que acho que deve ser estudada é o desempenho, expressões regulares por sí só já são custosas em termos de sistema e quanto maior a complexidade maior o tempo de processamento, dependendo do caso acredito que é mais interessante decompor a expressão e depois concatenar para montar o Pattern do que utilizar uma API fluente, principalmente quando vc tem certeza que o código que está sendo criado vai precisar de pouca manutenção no futuro.</p>
<p>Bom trabalho, </p>
<p>Abraços<br />
Pedro.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Java Server Faces 1.2 Hello World by Eduardo</title>
		<link>http://submundojava.com.br/wordpress/2007/08/27/java-server-faces-12-hello-world/#comment-924</link>
		<dc:creator>Eduardo</dc:creator>
		<pubDate>Thu, 23 Jul 2009 11:35:56 +0000</pubDate>
		<guid isPermaLink="false">http://submundojava.com.br/wordpress/2007/08/27/java-server-faces-12-hello-world/#comment-924</guid>
		<description>Muito bom o tutorial, só uma correçãozinha. O Scope do manage bean esta como "none" na segunda vez que se mostra o arquivo do faces config.</description>
		<content:encoded><![CDATA[<p>Muito bom o tutorial, só uma correçãozinha. O Scope do manage bean esta como &#8220;none&#8221; na segunda vez que se mostra o arquivo do faces config.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Criando aplicações Ajax, sem Javascript, utilizando Java Server Faces 1.2 e RichFaces by Renan Cristiano</title>
		<link>http://submundojava.com.br/wordpress/2007/12/17/criando-aplicacoes-ajax-sem-javascript-utilizando-java-server-faces-12-e-richfaces/#comment-866</link>
		<dc:creator>Renan Cristiano</dc:creator>
		<pubDate>Sat, 16 May 2009 21:04:07 +0000</pubDate>
		<guid isPermaLink="false">http://submundojava.com.br/wordpress/2007/12/17/criando-aplicacoes-ajax-sem-javascript-utilizando-java-server-faces-12-e-richfaces/#comment-866</guid>
		<description>Ótimo post!

Você explica detalhadamente cada passo, isto é interessante, para entender o que é configurado ou adicionado.

Conseguir rodar outros exemplos utilizando richfaces e ajax, depois que li este post. Valeu Henrique, meus parabéns.

=)</description>
		<content:encoded><![CDATA[<p>Ótimo post!</p>
<p>Você explica detalhadamente cada passo, isto é interessante, para entender o que é configurado ou adicionado.</p>
<p>Conseguir rodar outros exemplos utilizando richfaces e ajax, depois que li este post. Valeu Henrique, meus parabéns.</p>
<p>=)</p>
]]></content:encoded>
	</item>
	<item>
		<title>Comment on Criando aplicações Ajax, sem Javascript, utilizando Java Server Faces 1.2 e RichFaces by Fabio</title>
		<link>http://submundojava.com.br/wordpress/2007/12/17/criando-aplicacoes-ajax-sem-javascript-utilizando-java-server-faces-12-e-richfaces/#comment-855</link>
		<dc:creator>Fabio</dc:creator>
		<pubDate>Fri, 08 May 2009 13:22:17 +0000</pubDate>
		<guid isPermaLink="false">http://submundojava.com.br/wordpress/2007/12/17/criando-aplicacoes-ajax-sem-javascript-utilizando-java-server-faces-12-e-richfaces/#comment-855</guid>
		<description>Excelente post.

:-}</description>
		<content:encoded><![CDATA[<p>Excelente post.</p>
<p>:-}</p>
]]></content:encoded>
	</item>
</channel>
</rss>
