<?xml version="1.0" encoding="ISO-8859-1"?>
<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>DClick Team Weblog [pt] &#187; Café com Flex</title>
	<atom:link href="http://blog.dclick.com.br/category/cafe-com-flex/pt/feed/pt/" rel="self" type="application/rss+xml" />
	<link>http://blog.dclick.com.br</link>
	<description>Blog do time da DClick</description>
	<lastBuildDate>Tue, 11 May 2010 11:07:41 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>pt</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Café com Flex Parte II</title>
		<link>http://blog.dclick.com.br/2008/02/26/cafe-com-flex-parte-ii/pt/</link>
		<comments>http://blog.dclick.com.br/2008/02/26/cafe-com-flex-parte-ii/pt/#comments</comments>
		<pubDate>Tue, 26 Feb 2008 16:12:01 +0000</pubDate>
		<dc:creator>Beck Novaes</dc:creator>
				<category><![CDATA[Café com Flex]]></category>
		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://blog.dclick.com.br/2008/02/26/cafe-com-flex-parte-ii/</guid>
		<description><![CDATA[Twitter! Iniciante
Olá Beck Novaes, como andam as coisas? Já faz um bom tempo desde a nossa ultima conversa. Bem, eu continuo muito interessado no Flex. Porém, alguns amigos andaram me dizendo que o Flex não dá futuro. Eu não concordo com eles, mas gostaria de ouvir a sua opinião antes de retomarmos o nosso bate-papo [...]]]></description>
			<content:encoded><![CDATA[<span class="post-twitter" ><a href="http://twitter.com/home?status=DClick%20Post%3A%20%20%22Caf%E9%20com%20Flex%20Parte%20II%22%20http%3A%2F%2Ftinyurl.com%2F2uf6sm" title="Twitter! <br /><br />" rel="nofollow">Twitter! <br /><br /></a></span><p><strong>Iniciante</strong><br />
Olá Beck Novaes, como andam as coisas? Já faz um bom tempo desde a <a href="http://blog.dclick.com.br/2008/01/06/cafe-com-flex-parte-i/">nossa ultima conversa</a>. Bem, eu continuo muito interessado no Flex. Porém, alguns amigos andaram me dizendo que o Flex não dá futuro. Eu não concordo com eles, mas gostaria de ouvir a sua opinião antes de retomarmos o nosso bate-papo técnico. </p>
<p><span id="more-255"></span></p>
<p><strong>Beck Novaes</strong><br />
Olá iniciante. O Flex não dá futuro? Olha, eu ouço isto há uns cinco anos, não especificamente sobre Flex, mas sobre a plataforma Flash. Alguns teóricos e puristas de Web vivem falando mal do Flash e vira e mexe sai um daqueles artigos como <a href="http://www.useit.com/alertbox/20001029.html">aquele famoso do Jakob Nielsen</a>. Porém, entra ano saí ano e o Flash/Flex continua cada vez mais forte.</p>
<p>Se eu for falar pela minha vida profissional posso dizer que não me arrependo de ter focado no Flex nos últimos anos. Eu escrevo este post de New Jersey nos EUA <a href="http://www.becklog.org/2008/01/24/bela-vista/">donde posso ver Manhattan</a> depois do Rio pela janela do apartamento que estou hospedado. Nas ultimas semanas tive a oportunidade de trabalhar em um protótipo que foi apresentado na <a href="http://www.fastforward08.com/">maior conferência de Business e Tecnologia dedicada a Inovação de busca de informações</a>. E isso por quê? Porque assim como a empresa em que trabalho eu acreditei no Flex desde sua versão 1.0. Além disso, você pode ver <a href="http://blog.dclick.com.br/2007/01/17/por-que-eu-gosto-tanto-do-flex/">neste outro post</a> porque eu gosto tanto do Flex.</p>
<p><strong>Iniciante</strong><br />
Legal ouvir que as empresas e profissionais Brasileiros já estão tirando proveito do seu conhecimento técnico de Flex nos EUA. Não vejo a hora de entrar nessa também. Mas antes disso, obviamente, preciso continuar meus estudos em Flex. </p>
<p>No nosso ultimo bate-papo você mencionou alguma coisa sobre os Containers, que eu já sei são componentes que servem para fazer layout dos seus componentes filhos. Mas eu acho que ainda não sei qual container eu devo usar para cada situação. Você poderia falar um pouco sobre isso?</p>
<p><strong>Beck Novaes</strong><br />
Esta é uma excelente pergunta. E infelizmente não creio que eu possa te dar uma “receita de bolo” de qual container usar em qual situação. Obviamente, se você está desenvolvendo um aplicativo simples, talvez um HBox e dois VBox resolvam o seu problema. Mas como eu penso que você está  interessado em desenvolver aplicativos de grande porte a história é diferente. Possivelmente você terá que combinar os Containers de uma maneira mais complexa para obter o resultado desejado. Neste sentido, o que eu posso lhe falar é que você deve considerar duas coisas quando tiver que decidir qual Container utilizar: performance e facilidade de manutenção de código. </p>
<p>Como você deve saber os <a href="http://livedocs.adobe.com/flex/201/html/containers_intro_063_03.html">Containers possuem regras que definem como será feito o layout dos seus componentes filhos</a>. Estas regras são algoritmos, algumas vezes complexos, que são executados no Flash Player na maquina do usuário. Implicitamente isto quer dizer que se você tiver muitos Containers, um dentro do outro, a performance da sua aplicação pode ser prejudicada. Por isso considere fazer um <a href="http://en.wikipedia.org/wiki/Refactoring">Refactoring</a> do seu código de layout sempre que você perceber que a sua aplicação está demorando para “renderizar” a sua interface conforme você muda o tamanho do Browser. Nestes casos procure usar um Container que lhe permita chegar ao mesmo resultado sem ter que usar vários deles. Por exemplo, o <a href="http://livedocs.adobe.com/flex/201/html/layouts_065_15.html">Container Form</a> lhe permite chegar a <a href="http://livedocs.adobe.com/flex/201/html/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Book_Parts&#038;file=layouts_065_15.html">este layout</a> facilmente. Sem ele, talvez você tenha que usar vários VBox e HBox aninhados. Além disso, alguns containers possuem a propriedade “layout”. Com ela, você pode especificar que o layout dos componentes dentro de um Panel, por exemplo, é Horizontal sem que para isso você tenha que criar no Panel outro container como o HBox. Em outras palavras, você pode usar a propriedade layout que alguns Containers tem para evitar ter que usar um container adicional dentro deles para conseguir o resultado desejado. </p>
<p>Outro ponto a ser observado com relação a performance é a opção <a href="http://livedocs.adobe.com/flex/201/html/containers_intro_063_11.html">“creationPolicy”</a>. Por default os Containers tem a propriedade “creationPolicy” definida como “auto”, o que significa que os seus componentes filhos só serão instanciados quando eles forem necessários. Esta funcionaldiade do Flex é conhecida como Deferred Instatiation. A questão é: se você tem alguns componentes dentro de um Container que não está visível na tela do usuário ainda, por que eles deveriam estar instanciados? Eu usei a palavra visível, mas vale ressaltar esta funcionalidade não tem nada a ver com a propriedade “visible”. Na realidade você pode observar este comportamento quando você utiliza um Container como o ViewStack, por exemplo, para prover a navegação na sua aplicação.</p>
<p>Com relação à facilidade da manutenção de código a questão é que alguns Containers tornarão o seu código mais legível do que outros e geralmente aqueles que oferecem melhor performance são também aqueles que deixam o seu código menos legível. O Canvas, por exemplo, é a melhor opção em termos de performance, mas não é tão fácil conseguir com o Canvas o mesmo resultado que conseguimos com um VBox (sem usar o Design no Builder). Se bem que estes componentes que permitem posicionamento absoluto oferecem uma outra alternativa para criar layouts complexos. Esta funcionalidade, muito importante, é conhecida com <a href="http://livedocs.adobe.com/flex/201/html/size_position_058_11.html">Constraint Based Layout</a>. Fora isso, posso dizer que o VBox, apesar de oferecer uma performance inferior a do Canvas é mais fácil para dar manutenção. Enfim, como regra geral a dica é: utilize aquele que for mais fácil para compreender em termos de código. Se observar problema de performance Refatore para outro menos legível, mas com uma performance melhor. Você terá que saber como lidar com esse <a href="http://pt.wikipedia.org/wiki/Trade-off">“trade-off”</a> o tempo todo.</p>
<p><strong>Iniciante</strong><br />
Ufa! Já vi que os Containers são mesmo muito importantes para o Flex. Só fiquei com dúvida com relação ao Form. No HTML eu uso isso aí para fazer submit e processar alguma coisa no back-end. No Flex não é a mesma coisa?</p>
<p><strong>Beck Novaes</strong><br />
Foi muito bom você tocar neste assunto, pois essa é uma dúvida recorrente do pessoal iniciante em Flex. O Flex tem um Container Form sim, mas é só para fazer o layout de um Formulário padrão &#8211; <a href="http://livedocs.adobe.com/flex/201/html/layouts_065_16.html">aqui você pode ver um exemplo de como é esse layout</a>. E a maneira como o Flex interage com o Back-End é totalmente diferente da maneira como o HTML interage (exceto aplicações Ajax). Existem muitas diferenças entre a maneira de se trabalhar no Flex e se trabalhar nas aplicações Web tradicionais, de modo que eu recomendo que você evite fazer analogias no que diz respeito ao fluxo de trabalho.</p>
<p>Outra diferença importante, por exemplo, é que no HTML você cria praticamente uma página para cada tela. No Flex você pode ter tudo num único arquivo MXML, mas por questões de boas práticas você geralmente transforma sua tela em um Componente MXML &#8211; <a href="http://livedocs.adobe.com/flex/201/html/mxml_051_19.html">aqui tem um exemplo muito simples de como isso funciona</a>. Isso não significa que você deva fazer isso com todas as telas e somente o tempo e a experiência lhe darão o “feeling” que você precisa para saber o nível adequado de “granularização”. Em outras palavras, componentes demais é ruim assim como também é ruim componentes de menos. E, infelizmente, também não existe uma receita de bolo para você seguir.</p>
<p><strong>Iniciante</strong><br />
Tudo bem. Eu entendi que você não precisa criar um arquivo para cada tela. Mas com eu faço para navegar nestas telas?</p>
<p><strong>Beck Novaes</strong><br />
Ah, sim! Eu já ia esquecendo. De fato existem dois tipos de Containers que você pode usar no Flex. Os <a href="http://livedocs.adobe.com/flex/201/html/layouts_065_01.html">Layout Containers</a> e os <a href="http://livedocs.adobe.com/flex/201/html/navigators_066_01.html">Navigators Containers</a>. Parece que você já está entendendo bem do primeiro, mas ainda não falamos do segundo. Como o próprio nome diz, os Navigator Containers provem a navegação da sua aplicação. Novamente, isso é totalmente diferente da maneira como funciona o HMTL. Um exemplo simples de um Navigator Container é o TabNavitagor que oferece a navegação entre diferentes telas através de Tabs. <a href="http://livedocs.adobe.com/flex/201/html/navigators_066_08.html">Neste exemplo</a> cada VBox pode ser considerado uma tela que você pode componentizar ou não para tê-la em um arquivo externo. Outro Navigator Container muito utilizado é o ViewStack. A diferença do ViewStack para o TabNavigator é que o primeiro não possui navegação embutida (tabs) deixando-o livre para implementar a navegação conforme desejar. Além disso, para facilitar sua vida você pode ou não usar os Navigation Bars como você pode ver <a href="http://livedocs.adobe.com/flex/201/html/navigators_066_04.html">neste exemplo</a>.</p>
<p><strong>Iniciante</strong><br />
Mas Beck, me diz uma coisa: Eu vi várias pessoas fazendo o Layout da sua aplicação em Modo de Design no Flex Builder e usando States para prover a navegação. Achei isto bem fácil. Mas por que você ainda não mencionou nada a respeito?</p>
<p><strong>Beck Novaes</strong><br />
Bem, eu não mencionei nada sobre os States porque isso é uma tentação para os iniciantes, uma vez que é realmente mais fácil. Porém, tentar utilizar ao máximo os Containers e Navigators deixa o seu código mais simples de entender e modificar. O problema é que pode demorar um pouquinho até adquirir proficiência em como usar estes componentes.</p>
<p>Contudo, a pior coisa que você pode fazer na sua aplicação é criar uma navegação com States usando o AddChild e o RemoveChild. Ao fazer desta forma você perde tudo aquilo que eu falei sobre o <a href="http://livedocs.adobe.com/flex/201/html/containers_intro_063_11.html">“creationPolicy”</a> e o Deferred Instantiation. Quando você conhecer um pouco mais sobre o <a href="http://livedocs.adobe.com/flex/201/html/ascomponents_advanced_148_05.html">ciclo de vida dos componentes</a> você verá que grande parte do trabalho de inicialização é feita no momento do AddChild. Isto quer dizer que o AddChild é custoso em termos de processamento. Agora, imagine isto para uma tela inteira com vários componentes como é o que acontece quando você cria o sua navegação da aplicação usando States?</p>
<p><strong>Iniciante</strong><br />
Olha, eu estou de boca aberta com a quantidade de informações que temos sobre os Containers. Eu até ia te perguntar mais algumas coisas sobre outras funcionalidades do Flex, mas acho melhor eu digerir isso primeiro. Muito Obrigado e até a próxima.</p>
<p><strong>Beck Novaes</strong><br />
Bem, embora tenhamos falado basicamente sobre Containers espero que tenha sido proveitoso. Até a próxima. </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.dclick.com.br/2008/02/26/cafe-com-flex-parte-ii/pt/feed/pt/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Café com Flex Parte I</title>
		<link>http://blog.dclick.com.br/2008/01/06/cafe-com-flex-parte-i/pt/</link>
		<comments>http://blog.dclick.com.br/2008/01/06/cafe-com-flex-parte-i/pt/#comments</comments>
		<pubDate>Sun, 06 Jan 2008 13:32:07 +0000</pubDate>
		<dc:creator>Beck Novaes</dc:creator>
				<category><![CDATA[Café com Flex]]></category>
		<category><![CDATA[Flex]]></category>

		<guid isPermaLink="false">http://blog.dclick.com.br/2008/01/06/cafe-com-flex-parte-i/</guid>
		<description><![CDATA[Twitter! Desde os tempos de Macromedia eu sinto que muitas pessoas aprendem tanto sobre Flex nos Coffee Breaks quanto no próprio treinamento. Com base nisto e na confiança de que eu tenho de que a documentação do Flex é boa eu começo aqui uma série de artigos que simulam um bate-papo entre eu e uma [...]]]></description>
			<content:encoded><![CDATA[<span class="post-twitter" ><a href="http://twitter.com/home?status=DClick%20Post%3A%20%20%22Caf%E9%20com%20Flex%20Parte%20I%22%20http%3A%2F%2Ftinyurl.com%2Fyktu5d2" title="Twitter! <br /><br />" rel="nofollow">Twitter! <br /><br /></a></span><p>Desde os tempos de Macromedia eu sinto que muitas pessoas aprendem tanto sobre Flex nos Coffee Breaks quanto no próprio treinamento. Com base nisto e na confiança de que eu tenho de que a documentação do Flex é boa eu começo aqui uma série de artigos que simulam um bate-papo entre eu e uma pessoa iniciante em Flex. Espero que a idéia funcione e que esta serie de artigos sirva como referência para as pessoas que estão começando e até mesmo para aquelas já tem algum conhecimento de Flex. </p>
<p><span id="more-233"></span></p>
<p><strong>Iniciante</strong><br />
Olá Beck Novaes, eu sou iniciante em Flex e gostaria de criar a minha primeira aplicação. Você conhece algum tutorial que mostra como fazer isso?</p>
<p><strong>Beck Novaes</strong><br />
Olá “Iniciante”. Você pode acessar a documentação do Flex que, ao contrário do que muitos dizem, eu considero muito boa. Para você começar eu recomendaria <a href="http://livedocs.adobe.com/flex/201/html/tutorial_compile_016_1.html">este exemplo</a>.</p>
<p><strong>Iniciante</strong><br />
Olá Beck Novaes, sou eu de novo. Eu fiz o tutorial que você recomendou e funcionou direitinho. Mas fiquei interessado em saber mais. O Flex tem um tal de MXML. Para que serve isso? E o ActionScript? Qual a diferença entre os dois? </p>
<p><strong>Beck Novaes</strong><br />
Olá “Iniciante”. É bom ver que quer aprofundar os seus conhecimentos. Bem, vamos as respostas. O MXML é a notação XML que faz parte do “framework” do Flex para definir a interface. Já para fazer a parte lógica da sua aplicação você usa o ActionScript. No fundo o MXML só existe por uma questão de conveniência. Isto porque o XML é a melhor maneira de definir interfaces de usuário programaticamente. Ou seja, para definir a interface o XML é mais apropriado do que as linguagens de programação tradicionais. É por isso que <a href="http://xul.sourceforge.net/counter.html">toda tecnologia nova está partindo para este caminho</a> para definir as interfaces de usuário. Por outro lado, o XML não é tão bom quanto as linguagens de programação tradicionais para fazer a parte lógica da sua aplicação. É aqui que entra o ActionScript. Você pode encontrar na documentação mais informações sobre a sintaxe <a href="http://livedocs.adobe.com/flex/201/html/mxmlSyntax_052_1.html">MXML</a> e sobre como usar o <a href="http://livedocs.adobe.com/flex/201/html/usingas_053_1.html">ActionScript</a>.  </p>
<p><strong>Iniciante</strong><br />
Olá Beck Novaes, sou eu mais uma vez (hehehe). Interessante esse negócio de definir a interface usando o XML. Também dei uma olhada no ActionScript. A sintaxe lembra o Java e o C#. Mas ela é Orientada a Objetos ou Orientada a Eventos?</p>
<p><strong>Beck Novaes</strong><br />
Esse negócio de ser ou Orientado a Objetos ou Orientado a Eventos não é exclusivo como muita gente pensa. Ou seja, pode ser as duas coisas &#8211; e esse é o caso do Actionscript. Se você for pesquisar verá que os <a href="http://en.wikipedia.org/wiki/Object-oriented_programming">Eventos e a Orientação a Objetos surgiram praticamente juntos para atender as Graphic User Interfaces</a>. Os Eventos provêem uma maneira excelente de comunicação entre diferentes objetos. </p>
<p>Quando você trabalha com os componentes prontos do Flex você geralmente usa os eventos. Mas quando você for mais experiente em Flex você criará os seus próprios eventos para diminuir o acoplamento na sua aplicação. Você descobrirá também que no ActionScript os <a href="http://livedocs.adobe.com/flex/201/html/events_054_15.html">eventos podem ser propagados</a> tal como faz parte da especificação do <a href="http://en.wikipedia.org/wiki/ECMAScript">ECMA</a>. Porém, isto não é muito comum aos programadores acostumados com outras tecnologias. Além disso, como os eventos podem ser tratados por diferentes Event Handlers (tratadores de eventos) você pode definir a <a href="http://livedocs.adobe.com/flex/201/html/events_054_16.html">prioridade</a> deles. Em outras palavras, se houver mais de um Event Handler para o mesmo evento você pode definir qual será executado primeiro quando o evento for disparado.</p>
<p>Vale mencionar também que se você tem um background apenas de programação Web eu recomendo que <a href="http://livedocs.adobe.com/flex/201/html/events_054_01.html">pesquise a fundo os Eventos</a> no Flex &#8211; um fator chave para você desenvolver bem suas aplicações.</p>
<p><strong>Iniciante</strong><br />
Olha, eu até conhecia um pouco sobre eventos, mas esse negócio do Evento Propagar é novidade para mim. </p>
<p>Mas deixando os eventos um pouco de lado, vejo que o Flex é muito forte na parte visual. Por isso, sinto que é importante entender bem como funciona os componentes visuais. Você poderia me dar umas dicas?</p>
<p><strong>Beck Novaes</strong><br />
Claro que sim! Bem, os componentes visuais do Flex também fazem parte do <a href="http://en.wikipedia.org/wiki/SDK">SDK</a>. Este SDK do Flex foi projetado para tirar proveito da Orientação a Objetos e assim facilitar a utilização e a manipulação destes componentes. Por exemplo, <a href="http://livedocs.adobe.com/flex/201/html/components_056_03.html">aqui você pode ver</a> que todos os componente do Flex herdam de uma classe chamada <a href="http://livedocs.adobe.com/flex/201/html/components_056_04.html">UIComponent</a>. Esta classe provê métodos, propriedades, estilos e efeitos (Behaviors) comuns a todos os componentes. Os <a href="http://livedocs.adobe.com/flex/201/html/behaviors_068_01.html">Behaviors</a> são uma feature do Flex que lhe permite adicionar transições e animação e enriquecer a sua aplicação. </p>
<p>O Flex possui na implementação do seu SDK um conjunto de rotinas que controlam o layout, o tamanho e o ciclo de vida dos seus componentes. Existe toda uma nomenclatura para estes recursos tais com posicionamento absoluto, posicionamento relativo, tamanho explicito, tamanho default, etc. Enfim, não adianta eu ficar aqui tentando lhe explicar tudo isso. Por isso é importante você dar uma olhada <a href="http://livedocs.adobe.com/flex/201/html/components_056_01.html">neste link</a>.</p>
<p>Em resumo, você geralmente trata eventos de um componente visual, aplica <a href="http://livedocs.adobe.com/flex/201/html/components_056_10.html">estilos</a> e aplica efeitos (<a href="http://livedocs.adobe.com/flex/201/html/components_056_11.html">behaviors</a>). Tem também uma coisa chamada <a href="http://livedocs.adobe.com/flex/201/html/components_056_12.html">skin</a> que lhe permite mudar totalmente a aparência do seu componente. Ah! E você pode fazer todas essas alterações em tempo de execução.</p>
<p><strong>Iniciante</strong><br />
Caramba! Vejo que essa documentação é boa mesmo. O que faltava era alguém um pouco mais experiente para me mostrar onde encontrar o quê. Até agora estamos indo muito bem. Mas existiria algo mais que você poderia me falar sobre os componentes de interface?</p>
<p><strong>Beck Novaes</strong><br />
Bem, eu poderia lhe falar também que existe um grupo de componente que lida com dados. Este componentes são chamados de <a href="http://livedocs.adobe.com/flex/201/html/dpcontrols_062_01.html">Data-Driven components</a>. Todos eles possuem uma propriedade chamada “<a href="http://livedocs.adobe.com/flex/201/html/about_dataproviders_057_02.html">dataProvider</a>” que serve para manter os dados que eles apresentam. Você já ouviu falar de MVC? Pois bem, você pode pensar que cada um destes Data-Driven components possuem seu próprio MVC. Cada um deles tem um model para manter os dados (dataProvider) e podem apresentar estes dados de uma maneira diferente (View). Por fim, como já foi dito anteriormente, todos eles possuem eventos que tratam da interação com o usuário (control). E assim como no MVC a grande vantagem disso é que você pode mexer em cada uma das camadas sem interferir na outra. O ComboBox, o List e o DataGrid, por exemplo, podem apresentar o mesmo dado de uma maneira diferente. </p>
<p>Além disso os DataProviders trabalham com <a href="http://livedocs.adobe.com/flex/201/html/about_dataproviders_057_03.html">Collections</a>. As coleções provem maneiras de manipular o Model, ou seja o dataProvider. Estas coleções são abstratas de tal forma que se você souber usar a API corretamente você poderá ter bastante flexibilidade no Model dos seus componentes. </p>
<p>Bem, creio que isso já é bastante informação por hoje. Você tem muito conteúdo para digerir. Portanto, sugiro continuarmos o posso bate para daqui há alguns dias, ok?</p>
<p><strong>Iniciante</strong><br />
 Você tem razão. Creio que isso já é o suficiente para eu me divertir pelo resto da semana. Até mais.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.dclick.com.br/2008/01/06/cafe-com-flex-parte-i/pt/feed/pt/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
	</channel>
</rss>
