<?xml version="1.0" encoding="UTF-8"?>
<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>Ensaios Noturnos</title>
	<atom:link href="http://www.ruppel.eng.br/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ruppel.eng.br</link>
	<description>Engenheiro, psicólogo, jornalista, médico, louco, palmeirense...</description>
	<lastBuildDate>Thu, 29 Jul 2010 03:07:23 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1-alpha</generator>
		<item>
		<title>Upload automático de imagem do clipboard!</title>
		<link>http://www.ruppel.eng.br/2010/07/28/upload-automatico-de-imagem-do-clipboard/</link>
		<comments>http://www.ruppel.eng.br/2010/07/28/upload-automatico-de-imagem-do-clipboard/#comments</comments>
		<pubDate>Thu, 29 Jul 2010 03:07:23 +0000</pubDate>
		<dc:creator>Ruppel</dc:creator>
				<category><![CDATA[Engenheiro]]></category>
		<category><![CDATA[screenshotme]]></category>

		<guid isPermaLink="false">http://www.ruppel.eng.br/?p=127</guid>
		<description><![CDATA[Escrever posts com imagens traz uma dificuldade: o processo de upload não é prático! Você tem que tirar uma screenshot, salvar a Imagem, depois clicar num botãozinho para upload e inserir a imagem no seu post. Talvez, num futuro próximo, será possível copiar e colar diretamente do Word, por exemplo, para o seu editor de [...]]]></description>
			<content:encoded><![CDATA[<p>Escrever posts com imagens traz uma dificuldade: o processo de upload não é prático! Você tem que tirar uma screenshot, salvar a Imagem, depois clicar num botãozinho para upload e inserir a imagem no seu post.</p>
<p>Talvez, <a href="http://www.w3.org/TR/html5/editing.html#paste-from-clipboard">num futuro próximo</a>, será possível copiar e colar diretamente do Word, por exemplo, para o seu editor de texto web e ele fará o trabalho.</p>
<p>É verdade que se você usasse algo como o <a href="http://explore.live.com/windows-live-writer">Writer</a>, você teria a imagem automaticamente carregada no seu servidor. Mas o futuro são os softwares na Web. E eu venho falar de mais um aqui: <a href="http://dailyffs.com/share-screen/">ScreenShotMe</a></p>
<p>É fantástico! Agora você faz um print screen, acessa o endereço: <a href="http://dailyffs.com/shotme/">http://dailyffs.com/shotme/</a> e já pode colar sua imagem que será automaticamente enviada ao servidor deles. Melhor ainda: você pode recortar diretamente na página!</p>
<p>Para este <a href="http://www.ruppel.eng.br/2010/07/28/design-patterns-patterns-criacionais-prototype/">post aqui</a> eu já usei essa técnica. Acho que vai me ajudar muito.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ruppel.eng.br/2010/07/28/upload-automatico-de-imagem-do-clipboard/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Design Patterns &#8211; Patterns Criacionais: Prototype</title>
		<link>http://www.ruppel.eng.br/2010/07/28/design-patterns-patterns-criacionais-prototype/</link>
		<comments>http://www.ruppel.eng.br/2010/07/28/design-patterns-patterns-criacionais-prototype/#comments</comments>
		<pubDate>Thu, 29 Jul 2010 03:05:52 +0000</pubDate>
		<dc:creator>Ruppel</dc:creator>
				<category><![CDATA[Engenheiro]]></category>
		<category><![CDATA[design patterns]]></category>
		<category><![CDATA[patterns criacionais]]></category>
		<category><![CDATA[prototype]]></category>
		<category><![CDATA[resumo dos clássicos da computação]]></category>

		<guid isPermaLink="false">http://www.ruppel.eng.br/?p=126</guid>
		<description><![CDATA[A penúltima pattern criacional do livro Design Patterns têm uma motivação muito semelhante à pattern anterior, Factory. A prototype é usada quando você precisa instanciar um tipo não conhecido em tempo de compilação. Essa motivação também foi vista no uso das factories, com a diferença de que, com o Prototype, não há a criação de [...]]]></description>
			<content:encoded><![CDATA[<p>A penúltima pattern criacional do livro Design Patterns têm uma motivação muito semelhante à pattern anterior, <a href="http://www.ruppel.eng.br/2010/03/23/design-patterns-patterns-criacionais-factory-method/">Factory</a>.  A prototype é usada quando você precisa instanciar um tipo não conhecido em tempo de compilação. Essa motivação também foi vista no uso das factories, com a diferença de que, com o Prototype, não há a criação de uma hierarquia paralela de classes, situação que foi vista com a <a href="http://www.ruppel.eng.br/2010/03/23/design-patterns-patterns-criacionais-factory-method/">Factory</a>.</p>
<p>O funcionamento da Prototype é muito simples: para criação de um novo objeto você utiliza uma instância pré-existente desse objeto (um protótipo) e pede a ele mesmo que crie um clone.</p>
<p>A única dependência que você cria no seu sistema é de que essa interface comum passe a conter um método Clone, como mostra a figura abaixo.</p>
<p><img class="alignnone" title="Prototype" src="http://dailyffs.com/shotme/?T7x3bd" alt="Prototype" width="528" height="256" /></p>
<p>Essa pattern torna o cliente não dependente dos produtos concretos, diferentemente por exemplo da Builder (engraçado que o livro fala que a Builder também é independente, mas acho que erraram&#8230;. do alto da minha modéstia&#8230;rs).</p>
<p>E a grande vantagem dessa pattern é a simplicidade. Porém tendo que pagar o preço de implementar um método Clone, que pode não ser muito simples.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ruppel.eng.br/2010/07/28/design-patterns-patterns-criacionais-prototype/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Configurar Servidor DNS para o Registro.br</title>
		<link>http://www.ruppel.eng.br/2010/07/19/configurar-servidor-dns-para-o-registro-br/</link>
		<comments>http://www.ruppel.eng.br/2010/07/19/configurar-servidor-dns-para-o-registro-br/#comments</comments>
		<pubDate>Mon, 19 Jul 2010 23:30:29 +0000</pubDate>
		<dc:creator>Ruppel</dc:creator>
				<category><![CDATA[Engenheiro]]></category>
		<category><![CDATA[dns]]></category>
		<category><![CDATA[servidor]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://www.ruppel.eng.br/?p=116</guid>
		<description><![CDATA[Eu sempre tive curiosidade de configurar um servidor DNS. Em especial o servidor DNS porque, para se colocar um site no ar, acessível à toda Internet, eu sabia que você precisava de: 1. Computador com um ip fixo e com um servidor web (como o Apache) instalado2. Registro no Registro.br E na hora do cadastro [...]]]></description>
			<content:encoded><![CDATA[<p>Eu sempre tive curiosidade de configurar um servidor DNS.</p>
<p>Em especial o servidor DNS porque, para se colocar um site no ar, acessível à toda Internet, eu sabia que você precisava de:</p>
<p>1. Computador com um ip fixo e com um servidor web (como o <a href="http://www.apache.org/">Apache</a>) instalado<br />2. Registro no <a href="http://registro.br">Registro.br</a></p>
<p>E na hora do cadastro no Registro.br ele me pedia um bendito nome de servidor DNS.</p>
<p>Quando você contrata uma hospedagem eles vêm na forma &#8220;ns1.nomedahospedagem.com.br&#8221;. Mas se eu estou justamente cadastrando o meu domínio no Registro.br como será possível eu já ter um nome nesse estilo?</p>
<p>Eis que, hoje, lendo o <a href="http://www.registro.br/faq/index.html">FAQ do Registro.br</a> eu me deparei com o seguinte trecho:</p>
<blockquote><p>Os campos de endereço IP e IPv6 devem ser preenchidos somente nos casos em que o domínio do servidor DNS seja igual ou esteja contido no que está sendo delegado.<br />&#8230;<br />Exemplo: No caso do domínio XYZ.COM.BR delegado para os servidores FOO.XYZ.COM.BR, NS1.BAR.XYZ.COM.BR e NS1.KZX.COM.BR, para os dois primeiros servidores, o preenchimento do campo endereço IP é obrigatório</p>
</blockquote>
<p>Ou seja, se você vai cadastrar o seu domínio: ruppel.eng.br, pode colocar no registro.br o servidor DNS ns1.ruppel.eng.br. Mas aí você coloca tb o ip fixo (que era um pré-requisito que eu já conhecia). O Registro.br só usa o ip nesses casos de o DNS fazer parte do próprio domínio que você vai cadastrar. Super interessante!</p>
<p>Agora indo à parte prática.</p>
<p>Para configurar o DNS no Windows Server 2003++ você primeiro precisa ativar o Serviço:</p>
<p>1. Painel de Controle -&gt; Adicionar ou Remover Programas -&gt; Adicionar ou Remover Componentes do Windows -&gt; Serviços de Rede -&gt; Clique em Detalhes e Selecione &#8220;Domain Name System (DNS)&#8221;. </p>
<p>Com o serviço ativado você pode acessá-lo diretamente através das Ferramentas Administrativas.</p>
<p>Então você precisa criar uma zona (sem trocadilhos). No meu domínio a zona seria &#8220;ruppel.eng.br&#8221;. Botão direito em &#8220;Foward Lookup Zone&#8221; (Zona Direta) e &#8220;New Zone&#8221;.</p>
<p>Dentro dessa sua zone, você já pode adicionar suas entradas (ou registros, como preferir). Botão direito e você terá as opções de Registro A, Registro CNAME, Registro MX, que servem, respectivamente, para linkar o seu nome de domínio para ip, outro nome de domínio e para configurar email.</p>
<p>Um exemplo de Registro A é não preencher nada e colocar o ip da sua hospedagem. Outro exemplo é colocar como subdomínio o &#8220;www&#8221;. Outro tb interessante é colocar como subdomínio o asterisco &#8220;*&#8221;, assim qualquer subdomínio será direcionado para aquele ip.</p>
<p>Aqui tem o material Microsoft sobre a instalação e configuração de servidor DNS: <a href="http://http://support.microsoft.com/kb/814591" title="" target="">http://support.microsoft.com/kb/814591</a></p>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ruppel.eng.br/2010/07/19/configurar-servidor-dns-para-o-registro-br/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>dúvida</title>
		<link>http://www.ruppel.eng.br/2010/07/18/duvida/</link>
		<comments>http://www.ruppel.eng.br/2010/07/18/duvida/#comments</comments>
		<pubDate>Sun, 18 Jul 2010 22:56:18 +0000</pubDate>
		<dc:creator>Ruppel</dc:creator>
				<category><![CDATA[ele mesmo]]></category>
		<category><![CDATA[horóscopo]]></category>

		<guid isPermaLink="false">http://www.ruppel.eng.br/?p=113</guid>
		<description><![CDATA[quão problemática é uma pessoa que, ao receber mensagens de duas pessoas amadas em questões de minutos, resolve conferir o horóscopo para saber se o destino lhe previa tais surpresas? ou ainda que ao ouvir o nome Krakóvia lembra-se do filme &#8220;O Terminal&#8221; ao invés da &#8220;Lista de Shingler&#8221;, pq no primeiro, o espetacular Tom [...]]]></description>
			<content:encoded><![CDATA[<p>quão problemática é uma pessoa que, ao receber mensagens de duas pessoas amadas em questões de minutos, resolve conferir o horóscopo para saber se o destino lhe previa tais surpresas?</p>
<p>ou ainda que ao ouvir o nome Krakóvia lembra-se do filme &#8220;O Terminal&#8221; ao invés da &#8220;Lista de Shingler&#8221;, pq no primeiro, o espetacular Tom Hanks é um viajante da Krakozhia, país fictício do filme (neste caso a presença de Catherine Zeta-Jones pode explicar muita coisa)</p>
<p>enfim, apenas dois episódios preocupantes do dia</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ruppel.eng.br/2010/07/18/duvida/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>disable optimizations ou &#8220;cannot obtain value of local or argument &#8230; possibly because it has been optimized away&#8221;</title>
		<link>http://www.ruppel.eng.br/2010/07/10/disable-optimizations-ou-cannot-obtain-value-of-local-or-argument-possibly-because-it-has-been-optimized-away/</link>
		<comments>http://www.ruppel.eng.br/2010/07/10/disable-optimizations-ou-cannot-obtain-value-of-local-or-argument-possibly-because-it-has-been-optimized-away/#comments</comments>
		<pubDate>Sun, 11 Jul 2010 01:30:07 +0000</pubDate>
		<dc:creator>Ruppel</dc:creator>
				<category><![CDATA[Engenheiro]]></category>
		<category><![CDATA[.NET Framework]]></category>
		<category><![CDATA[bug]]></category>
		<category><![CDATA[disable optimizations]]></category>

		<guid isPermaLink="false">http://www.ruppel.eng.br/?p=111</guid>
		<description><![CDATA[eu já tive esse problema: Cannot obtain value of local or argument &#8216;variableName&#8217; as it is not available at this instruction pointer, possibly because it has been optimized away mas na época não dei muita atenção, é uma pequena limitação enquanto vc tenta debugar alguns códigos nativos do .Net Framework. aliás, achei bem natural haver [...]]]></description>
			<content:encoded><![CDATA[<p>eu já tive esse problema:</p>
<blockquote><p>Cannot obtain value of local or argument &#8216;variableName&#8217; as it is not available at this instruction pointer, possibly because it has been optimized away</p></blockquote>
<p>mas na época não dei muita atenção, é uma pequena limitação enquanto vc tenta debugar alguns códigos nativos do .Net Framework.</p>
<p>aliás, achei bem natural haver restrições pra isso</p>
<p>eis que não existem restrições! e a solução para o problema acima está descrita <a href="http://blogs.msdn.com/b/sburke/archive/2008/01/29/how-to-disable-optimizations-when-debugging-reference-source.aspx">aqui</a></p>
<p>foi bacana que eu <a href="http://alfredmyers.spaces.live.com/Blog/cns!19D601BD22E34F6E!3842.entry?sa=55955823">achei essa solução por acaso</a>, num <a href="http://alfredmyers.spaces.live.com/blog/">blog simpático e não muito ativo</a> que eu acompanho</p>
<p>na verdade, na época eu nem achei q era um &#8220;problema&#8221;, por isso não fui atrás de solução&#8230; mas agora jah sei =)</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ruppel.eng.br/2010/07/10/disable-optimizations-ou-cannot-obtain-value-of-local-or-argument-possibly-because-it-has-been-optimized-away/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>futuro da UI</title>
		<link>http://www.ruppel.eng.br/2010/07/06/futuro-da-ui/</link>
		<comments>http://www.ruppel.eng.br/2010/07/06/futuro-da-ui/#comments</comments>
		<pubDate>Wed, 07 Jul 2010 01:41:13 +0000</pubDate>
		<dc:creator>Ruppel</dc:creator>
				<category><![CDATA[Engenheiro]]></category>
		<category><![CDATA[futuro]]></category>
		<category><![CDATA[ui]]></category>

		<guid isPermaLink="false">http://www.ruppel.eng.br/?p=103</guid>
		<description><![CDATA[Hoje as pessoas usam Mouses, teclados e monitores como se fossem as coisas mais naturais do mundo mas eu vejo nisso um quê de passado existem algumas alternativas para controlar um computador: reconhecimento de voz, as ultimamente badaladas &#8220;touchscreens&#8221;, mas há coisas ainda mais modernas: talvez encontrar o verdadeiro futuro da UI (esses padrões parecem [...]]]></description>
			<content:encoded><![CDATA[<p>Hoje as pessoas usam Mouses, teclados e monitores como se fossem as coisas mais naturais do mundo</p>
<p>mas eu vejo nisso um quê de passado</p>
<p>existem algumas alternativas para controlar um computador: reconhecimento de voz, as ultimamente badaladas &#8220;touchscreens&#8221;, mas há coisas ainda mais modernas:</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="400" height="250" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/b6YTQJVzwlI&amp;hl=pt_BR&amp;fs=1" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="400" height="250" src="http://www.youtube.com/v/b6YTQJVzwlI&amp;hl=pt_BR&amp;fs=1" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<p>talvez encontrar o verdadeiro futuro da UI (esses padrões parecem bizarros qdo vc pensa em uma lan house usando qqler um deles: ou seria um monte de gente falando ao mesmo tempo com seus computadores, ou fazendo gestos, e aí as coisas mais tradicionais parecem mais sensatas)</p>
<p>pois bem&#8230; encontrar o futuro da UI parece um bom caminho de inovação</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ruppel.eng.br/2010/07/06/futuro-da-ui/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>a idade dos gênios</title>
		<link>http://www.ruppel.eng.br/2010/07/05/a-idade-dos-genios/</link>
		<comments>http://www.ruppel.eng.br/2010/07/05/a-idade-dos-genios/#comments</comments>
		<pubDate>Tue, 06 Jul 2010 03:20:56 +0000</pubDate>
		<dc:creator>Ruppel</dc:creator>
				<category><![CDATA[Filósofo]]></category>
		<category><![CDATA[divagação]]></category>
		<category><![CDATA[gênio]]></category>
		<category><![CDATA[idade]]></category>

		<guid isPermaLink="false">http://www.ruppel.eng.br/?p=97</guid>
		<description><![CDATA[outro dia comentou-se que as pessoas têm seu auge até os 23 anos&#8230; mais tardar 26 e que as idéias revolucionárias nascem na juventude de seus autores a discussão tendia desacreditar gênios adormecidos, como, quem sabe, eu&#8230;rs (ou mesmo vc, leitor) confesso q é um pouco triste pensar q o auge físico chega tão cedo&#8230;enquanto [...]]]></description>
			<content:encoded><![CDATA[<p>outro dia comentou-se que as pessoas têm seu auge até os 23 anos&#8230; mais tardar 26</p>
<p>e que as idéias revolucionárias nascem na juventude de seus autores</p>
<p>a discussão tendia desacreditar gênios adormecidos, como, quem sabe, eu&#8230;rs (ou mesmo vc, leitor)</p>
<p>confesso q é um pouco triste pensar q o auge físico chega tão cedo&#8230;enquanto temos muito a aprender</p>
<p>mas, naturalmente, muitas idéias revolucionárias podem, sim, ser publicadas por pessoas bem velhas</p>
<p>por mais que eu realmente tendo a concordar que o embrião dessas idéias esteve presente desde a juventude tenra de seus autores&#8230; ainda vejo a maturidade com o papel de dar um toque de clareza para o gênio identificar sua genialidade, ou seja:</p>
<p>posso até concordar que as idéias geniais nasçam até os 23 anos de seus autores, mas nada garante o momento em que essas idéias serão percebidas, publicadas e compartilhadas com a humanidade</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ruppel.eng.br/2010/07/05/a-idade-dos-genios/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>fancybox vs colorbox</title>
		<link>http://www.ruppel.eng.br/2010/04/21/fancybox-vs-colorbox/</link>
		<comments>http://www.ruppel.eng.br/2010/04/21/fancybox-vs-colorbox/#comments</comments>
		<pubDate>Wed, 21 Apr 2010 22:58:10 +0000</pubDate>
		<dc:creator>Ruppel</dc:creator>
				<category><![CDATA[Engenheiro]]></category>
		<category><![CDATA[colorbox]]></category>
		<category><![CDATA[fancybox]]></category>
		<category><![CDATA[jquery. plugin]]></category>

		<guid isPermaLink="false">http://www.ruppel.eng.br/?p=90</guid>
		<description><![CDATA[meu último post fala do uso de fancybox em suas páginas mas eu tive alguns problemas com fancybox, e decidi trocar pelo colorbox. O bug determinante para isso foi que eu tive problemas para abrir o fancybox em IE7 quando usando o IIS do Windows 7.  E ainda depois da segunda ou terceira vez que [...]]]></description>
			<content:encoded><![CDATA[<p>meu último post fala do uso de<a href="http://fancybox.net/"> fancybox </a>em suas páginas</p>
<p>mas eu tive alguns problemas com <a href="http://fancybox.net/">fancybox</a>, e decidi trocar pelo <a href="http://colorpowered.com/colorbox/">colorbox</a>. O bug determinante para isso foi que eu tive problemas para abrir o fancybox em IE7 quando usando o IIS do Windows 7.  E ainda depois da segunda ou terceira vez que se tenta abrir a modal. Sim, problema muito específico, então nada muito grave.</p>
<p>A única vantagem que vi do fancybox em relação ao colorbox é permitir o posicionamento centralizado da modal, mesmo quando fazemos scroll do conteúdo que está atrás. Opção &#8220;centerOnScroll&#8221;.</p>
<p>O colorbox é mais leve, mais simples, e não tem esse bug do fancybox. Além disso, há um problema chato com fancybox:</p>
<p>Quando eu abro arquivos da minha máquina direto no navegador, o fancybox não vai funcionar com ajax. O modo ajax só funciona através de um servidor http.</p>
<p>Novamente, ambos os jquery plugins são excelentes. Mas esses dois detalhes do fancybox me irritaram, então resolvi trocar para o colorbox.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ruppel.eng.br/2010/04/21/fancybox-vs-colorbox/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>abrir fancybox ajax manualmente</title>
		<link>http://www.ruppel.eng.br/2010/03/29/abrir-fancybox-ajax-manualmente/</link>
		<comments>http://www.ruppel.eng.br/2010/03/29/abrir-fancybox-ajax-manualmente/#comments</comments>
		<pubDate>Tue, 30 Mar 2010 00:18:43 +0000</pubDate>
		<dc:creator>Ruppel</dc:creator>
				<category><![CDATA[Engenheiro]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[fancybox]]></category>
		<category><![CDATA[jquery]]></category>

		<guid isPermaLink="false">http://www.ruppel.eng.br/?p=88</guid>
		<description><![CDATA[estava procurando  como abrir uma pop-in do fancybox com conteúdo carregado via AJAX o jeito indicado é usar um selector no link e chamar o método validate não encontrei na internet como fazer essa chamada javascript manualmente, para forçar a pop-in em um momento específico a solução descobri fuçando o código do plugin: basta incluir [...]]]></description>
			<content:encoded><![CDATA[<p>estava procurando  como abrir uma pop-in do fancybox com conteúdo carregado via AJAX</p>
<p>o jeito indicado é usar um selector no link e chamar o método validate</p>
<p>não encontrei na internet como fazer essa chamada javascript manualmente, para forçar a pop-in em um momento específico</p>
<p>a solução descobri fuçando o código do plugin: basta incluir o type ajax nas opções da chamada manual:</p>
<blockquote>
<div id="_mcePaste">$.fancybox(&#8216;endereco_popup.html&#8217;, { &#8216;type&#8217; : &#8216;ajax&#8217; } );</div>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.ruppel.eng.br/2010/03/29/abrir-fancybox-ajax-manualmente/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Design Patterns &#8211; Patterns Criacionais: Factory Method</title>
		<link>http://www.ruppel.eng.br/2010/03/23/design-patterns-patterns-criacionais-factory-method/</link>
		<comments>http://www.ruppel.eng.br/2010/03/23/design-patterns-patterns-criacionais-factory-method/#comments</comments>
		<pubDate>Wed, 24 Mar 2010 00:56:56 +0000</pubDate>
		<dc:creator>Ruppel</dc:creator>
				<category><![CDATA[ele mesmo]]></category>
		<category><![CDATA[design patterns]]></category>
		<category><![CDATA[factory]]></category>
		<category><![CDATA[patterns criacionais]]></category>
		<category><![CDATA[resumo dos clássicos da computação]]></category>

		<guid isPermaLink="false">http://www.ruppel.eng.br/?p=85</guid>
		<description><![CDATA[A terceira pattern do livro é bem conhecida: é uma Factory. A factory tem 3 usos bem claros: Você está criando um framework no qual você precisa instanciar uma classe que estará fora do framework. Você quer que uma subclasse especifique qual tipo de produto a sua classe pai (ou mãe?) deve criar Você quer [...]]]></description>
			<content:encoded><![CDATA[<p>A terceira pattern do livro é bem conhecida: é uma Factory. A factory tem 3 usos bem claros:</p>
<ol>
<li>Você está criando um framework no qual você precisa instanciar uma classe que estará fora do framework.</li>
<li>Você quer que uma subclasse especifique qual tipo de produto a sua classe pai (ou mãe?) deve criar</li>
<li>Você quer concentrar o conhecimento de quais são as classes concretas (implementações) usadas no seu sistema em um único lugar.</li>
</ol>
<p>Para solucionar esses três casos distintos, usa-se a simples idéia de ter uma classe abstrata com um método CreateProduct() que será implementado por sua filha.</p>
<p><a href="http://www.ruppel.eng.br/wp-content/uploads/2010/03/image4.jpeg"><img class="aligncenter size-full wp-image-86" title="factory method" src="http://www.ruppel.eng.br/wp-content/uploads/2010/03/image4.jpeg" alt="" width="532" height="199" /></a></p>
<p>Repare que quem faz uso do FactoryMethod é a própria classe Creator, mas esse método será implementado apenas pelo ConcreteCreator.</p>
<p>Uma consequência interessante da FactoryMethod tratada no livro é permitir a manipulação de hierarquias paralelas de classes. O exemplo dado é de elementos gráficos que possam ser manipulados (redimensionados, cortados, arrastados), como Linhas, Textos e Imagens.  Cada um desses objetos é manipulado diferentemente, mas através de uma mesma interface, a interface Manipulator.</p>
<p>Assim, você define na interface comum a esses produtos (no caso seria uma interface ElementosGráficos)  um método CreateManipulator. E a classe Linha irá criar um ManipuladorDeLinha, a classe Texto um ManipuladorDeTexto e a Imagem um ManipuladorDeImagem. Criando, dessa forma, as duas hierarquias paralelas: a de elementos gráficos e a de manipuladores desses elementos.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.ruppel.eng.br/2010/03/23/design-patterns-patterns-criacionais-factory-method/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
