<?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>TiloWR</title>
	<atom:link href="http://tilowr.com.br/feed/" rel="self" type="application/rss+xml" />
	<link>http://tilowr.com.br</link>
	<description>Especialista em HTML</description>
	<lastBuildDate>Wed, 15 Jun 2011 18:19:40 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Converter milissegundos do tempo de video HTML 5 em minutos com javascript</title>
		<link>http://tilowr.com.br/converter-milissegundos-do-tempo-de-video-html-5-em-minutos-com-javascript/</link>
		<comments>http://tilowr.com.br/converter-milissegundos-do-tempo-de-video-html-5-em-minutos-com-javascript/#comments</comments>
		<pubDate>Wed, 15 Jun 2011 18:19:40 +0000</pubDate>
		<dc:creator>Tilo</dc:creator>
				<category><![CDATA[HTML 5]]></category>
		<category><![CDATA[JavaScript, jQuery & Ajax]]></category>
		<category><![CDATA[XHTML & CSS]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[tempo]]></category>
		<category><![CDATA[Video]]></category>
		<category><![CDATA[video.duration]]></category>

		<guid isPermaLink="false">http://tilowr.com.br/?p=1345</guid>
		<description><![CDATA[A tag video do HTML 5 oferece vários atributos que ajudam o programador HTML montar um layout personalizado, porem ele trabalha com tempo em milisegundo, porem exemplo o tempo do video ao inves de vir 1:25 virá 85.5986445852 e agora, &#8230; <a href="http://tilowr.com.br/converter-milissegundos-do-tempo-de-video-html-5-em-minutos-com-javascript/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>A tag video do <strong>HTML 5</strong> oferece vários atributos que ajudam o programador <strong>HTML</strong> montar um layout personalizado, porem ele trabalha com tempo em milisegundo, porem exemplo o tempo do video ao inves de vir 1:25 virá 85.5986445852 e agora, como fazer? Bem, a ideia é simples e vou dividir em duas funções, a primeira pega o tempo e divide em dois grupos, minuto e segundo, a segunda função verifica se o tempo resultante da primeira função tem apenas um caracter e adiciona um “zero” a frente dele. Vamos as funções:</p>
<p>Recebe tempo em milissegundos e transforma em minutos</p>
<pre name="code" class="javascript">
var video = document.getElementById('video');
var tempo = coverteTempo(video.duration);
</pre>
<pre name="code" class="javascript">
function coverteTempo(tempo) {
tempo = Math.round(tempo);
var segundo = tempo % 60;
var minuto = Math.round(tempo / 60);
verificaUnidade(minuto) + ':' + verificaUnidade(segundo);
}
</pre>
<p>Recebe o resultado e verifica se tem apenas um digito</p>
<pre name="code" class="javascript">
function verificaUnidade(tempo) {
tempo += "";
if (tempo.length &lt; 2) tempo = "0" + tempo;
return tempo;
}
</pre>
<h4  class="related_post_title">Leia Também:</h4><ul class="related_post"><li><a href="http://tilowr.com.br/verificar-status-do-navegador-com-html5-window-navigator-online/" title="Verificar Status do navegador com HTML5 (window.navigator.onLine)">Verificar Status do navegador com HTML5 (window.navigator.onLine)</a></li><li><a href="http://tilowr.com.br/teste-de-masculinidade-fail/" title="Teste de masculinidade fail">Teste de masculinidade fail</a></li><li><a href="http://tilowr.com.br/google-developer-day-brasil-2010/" title="Google Developer Day Brasil 2010">Google Developer Day Brasil 2010</a></li><li><a href="http://tilowr.com.br/casa-construcao/" title="Casa &#038; Construção">Casa &#038; Construção</a></li><li><a href="http://tilowr.com.br/hands-on-html-5-2010/" title="Hands-on HTML 5 2010">Hands-on HTML 5 2010</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://tilowr.com.br/converter-milissegundos-do-tempo-de-video-html-5-em-minutos-com-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CSS Personalizado para mudança de orientação no iPhone e iPad</title>
		<link>http://tilowr.com.br/css-personalizado-para-mudanca-de-orientacao-no-iphone-e-ipad/</link>
		<comments>http://tilowr.com.br/css-personalizado-para-mudanca-de-orientacao-no-iphone-e-ipad/#comments</comments>
		<pubDate>Tue, 14 Jun 2011 19:23:24 +0000</pubDate>
		<dc:creator>Tilo</dc:creator>
				<category><![CDATA[XHTML & CSS]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[ipad]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[Orientação]]></category>
		<category><![CDATA[orientation]]></category>

		<guid isPermaLink="false">http://tilowr.com.br/?p=1339</guid>
		<description><![CDATA[Já fiz um post explicando como via JavaScript pegar essa mudança e colocar uma classe no body da página, além de ter um melhor resultado em performance ainda permite que seja testado no PC, mas se mesmo assim você ainda &#8230; <a href="http://tilowr.com.br/css-personalizado-para-mudanca-de-orientacao-no-iphone-e-ipad/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Já fiz um <a href="http://tilowr.com.br/detectar-mudanca-de-orientacao-no-iphone-e-ipad-com-javascript/">post explicando</a> como via <strong>JavaScript </strong>pegar essa mudança e colocar uma classe no body da página, além de ter um melhor resultado em performance ainda permite que seja testado no PC, mas se mesmo assim você ainda quer usar o recurso de <strong>@media</strong> do <strong>CSS</strong>, vamos lá, ele pode ser feito de algumas formas:</p>
<p>No <strong>HTML </strong>na tag Link</p>
<pre name="code" class="html">
&lt;link media="only screen and (max-device-width: 768px)" href="portrait.css" type="text/css" rel="stylesheet" /&gt;

&lt;link media="only screen and (max-device-width: 1024px)" href="landscape.css" type="text/css" rel="stylesheet" /&gt;
</pre>
<p>No <strong>CSS </strong>no seletor <strong>@Media</strong></p>
<pre name="code" class="css">
@media only screen and (max-device-width: 768px) and (orientation:portrait) {
// Seletores para Landscape (Paisagem)
}

@media only screen and (max-device-width: 1024px) and (orientation:landscape) {
// Seletores para Portrait (Retrato)
}
</pre>
<p>Ficou na Dúvida? Precisa de Ajuda? Comenta ai que eu sempre respondo!</p>
<h4  class="related_post_title">Leia Também:</h4><ul class="related_post"><li><a href="http://tilowr.com.br/detectar-mudanca-de-orientacao-no-iphone-e-ipad-com-javascript/" title="Detectar mudança de orientação no iPhone e iPad com JavaScript">Detectar mudança de orientação no iPhone e iPad com JavaScript</a></li><li><a href="http://tilowr.com.br/manipulando-a-area-de-selecao-do-usuario-com-css-para-iphone-e-ipad/" title="Manipulando a área de seleção do usuário com CSS para iPhone e iPad">Manipulando a área de seleção do usuário com CSS para iPhone e iPad</a></li><li><a href="http://tilowr.com.br/pinch-zoom-com-javascript-ongesturechange-e-style-zoom/" title="Pinch zoom com javascript (ongesturechange e style.zoom)">Pinch zoom com javascript (ongesturechange e style.zoom)</a></li><li><a href="http://tilowr.com.br/fullscreen-no-ipad/" title="FullScreen no iPad">FullScreen no iPad</a></li><li><a href="http://tilowr.com.br/habilitando-debug-console-no-ipad-vale-pro-iphone-tambem/" title="Habilitando Debug Console no iPad (Vale pro iPhone Tambem)">Habilitando Debug Console no iPad (Vale pro iPhone Tambem)</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://tilowr.com.br/css-personalizado-para-mudanca-de-orientacao-no-iphone-e-ipad/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Detectar mudança de orientação no iPhone e iPad com JavaScript</title>
		<link>http://tilowr.com.br/detectar-mudanca-de-orientacao-no-iphone-e-ipad-com-javascript/</link>
		<comments>http://tilowr.com.br/detectar-mudanca-de-orientacao-no-iphone-e-ipad-com-javascript/#comments</comments>
		<pubDate>Tue, 14 Jun 2011 19:03:03 +0000</pubDate>
		<dc:creator>Tilo</dc:creator>
				<category><![CDATA[HTML 5]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[XHTML & CSS]]></category>
		<category><![CDATA[ipad]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[orientation]]></category>
		<category><![CDATA[updateOrientation]]></category>

		<guid isPermaLink="false">http://tilowr.com.br/?p=1334</guid>
		<description><![CDATA[Para montar um layout personalizados para iPhone e iPad o programador HTML precisa ficar atento a alguns detalhes importantes, como a orientação, mesmo tendo um recurso do CSS muitas vezes precisamos que as funções JavaScript se comportem de forma diferente &#8230; <a href="http://tilowr.com.br/detectar-mudanca-de-orientacao-no-iphone-e-ipad-com-javascript/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Para montar um layout personalizados para iPhone e iPad o programador <strong>HTML</strong> precisa ficar atento a alguns detalhes importantes, como a orientação, mesmo tendo um recurso do <strong>CSS</strong> muitas vezes precisamos que as funções <strong>JavaScript</strong> se comportem de forma diferente para cada orientação.</p>
<p>Primeiro vá ao body do seu <strong>HTML</strong> e coloque atribua uma função ao evento &#8216;onorientationchange&#8217;</p>
<pre name="code" class="html">
&lt;body onorientationchange="updateOrientation();"&gt;
</pre>
<p>Logo em seguida adicione ao seu <strong>JavaScript</strong> a seguinte função</p>
<pre name="code" class="javascript">
function updateOrientation(){
	if (window.orientation == 90 || window.orientation == -90) {
		document.body.className = 'landscape';
	} else {
		document.body.className = 'portrait';
	}
}
</pre>
<p>Pronto, agora basta antes de executar uma função verificar qual a classe do body, também achei esse recuso melhor do que verificar com o <strong>CSS</strong> por que ele teve um desempenho bem melhor no <strong>CSS</strong>, deixando as classes com herança e dando um resultado bem mais agradável.</p>
<h4  class="related_post_title">Leia Também:</h4><ul class="related_post"><li><a href="http://tilowr.com.br/css-personalizado-para-mudanca-de-orientacao-no-iphone-e-ipad/" title="CSS Personalizado para mudança de orientação no iPhone e iPad">CSS Personalizado para mudança de orientação no iPhone e iPad</a></li><li><a href="http://tilowr.com.br/pinch-zoom-com-javascript-ongesturechange-e-style-zoom/" title="Pinch zoom com javascript (ongesturechange e style.zoom)">Pinch zoom com javascript (ongesturechange e style.zoom)</a></li><li><a href="http://tilowr.com.br/manipulando-a-area-de-selecao-do-usuario-com-css-para-iphone-e-ipad/" title="Manipulando a área de seleção do usuário com CSS para iPhone e iPad">Manipulando a área de seleção do usuário com CSS para iPhone e iPad</a></li><li><a href="http://tilowr.com.br/fullscreen-no-ipad/" title="FullScreen no iPad">FullScreen no iPad</a></li><li><a href="http://tilowr.com.br/habilitando-debug-console-no-ipad-vale-pro-iphone-tambem/" title="Habilitando Debug Console no iPad (Vale pro iPhone Tambem)">Habilitando Debug Console no iPad (Vale pro iPhone Tambem)</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://tilowr.com.br/detectar-mudanca-de-orientacao-no-iphone-e-ipad-com-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Arquivo langs.xml corrompido Notepad++</title>
		<link>http://tilowr.com.br/arquivo-langs-xml-corrompido-notepad/</link>
		<comments>http://tilowr.com.br/arquivo-langs-xml-corrompido-notepad/#comments</comments>
		<pubDate>Tue, 24 May 2011 16:25:07 +0000</pubDate>
		<dc:creator>Tilo</dc:creator>
				<category><![CDATA[Dicas]]></category>

		<guid isPermaLink="false">http://tilowr.com.br/?p=1332</guid>
		<description><![CDATA[Todo Programador HTML sabe que nenhuma IDE é capaz de superar o Notepad++, porém hoje o meu Notepad++ ficou maluco, toda vez que eu abria ele dava um erro no arquivo langs.xml e não &#8220;coloria&#8221; automaticamente o código. A correção &#8230; <a href="http://tilowr.com.br/arquivo-langs-xml-corrompido-notepad/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Todo Programador HTML sabe que nenhuma IDE é capaz de superar o Notepad++, porém hoje o meu Notepad++ ficou maluco, toda vez que eu abria ele dava um erro no arquivo langs.xml e não &#8220;coloria&#8221; automaticamente o código.</p>
<p>A correção é extremamente simples, vá até o diretório de instalação do NotePad++ que normalmente é C:\Program Files\Notepad++ apague o arquivo langs.xml que está corrompido e duplique o arquivo langs.model.xml mudando o nome dele para langs.xml, pronto! seu Notpad++ já está funfando normalmente.</p>
<h4  class="related_post_title">Leia Também:</h4><ul class="related_post"><li><a href="http://tilowr.com.br/sulamerica-forum-saude/" title="SulAmérica Forum Saúde">SulAmérica Forum Saúde</a></li><li><a href="http://tilowr.com.br/manipulando-a-area-de-selecao-do-usuario-com-css-para-iphone-e-ipad/" title="Manipulando a área de seleção do usuário com CSS para iPhone e iPad">Manipulando a área de seleção do usuário com CSS para iPhone e iPad</a></li><li><a href="http://tilowr.com.br/feliz-ano-novo/" title="Feliz Ano novo">Feliz Ano novo</a></li><li><a href="http://tilowr.com.br/asp-net-3-5-para-leigos-for-dummies/" title="ASP.NET 3.5 Para Leigos (For Dummies)">ASP.NET 3.5 Para Leigos (For Dummies)</a></li><li><a href="http://tilowr.com.br/acabe-com-os-folgados/" title="Acabe com os folgados">Acabe com os folgados</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://tilowr.com.br/arquivo-langs-xml-corrompido-notepad/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Exibindo dados no navegador com PHP e as funções print(), echo() printf() e sprintf()</title>
		<link>http://tilowr.com.br/exibindo-dados-no-navegador-com-php-e-as-funcoes-print-echo-printf-e-sprintf/</link>
		<comments>http://tilowr.com.br/exibindo-dados-no-navegador-com-php-e-as-funcoes-print-echo-printf-e-sprintf/#comments</comments>
		<pubDate>Thu, 07 Apr 2011 16:34:00 +0000</pubDate>
		<dc:creator>Tilo</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[echo() printf()]]></category>
		<category><![CDATA[funções]]></category>
		<category><![CDATA[print()]]></category>
		<category><![CDATA[sprintf()]]></category>

		<guid isPermaLink="false">http://tilowr.com.br/?p=1328</guid>
		<description><![CDATA[Print() A Função print() imprime dados no navegador de algumas formas diferentes, seguem alguns exemplos: &#60;?php $clima1 = "Calor"; $clima2 = "Frio"; print("Prefiro o $clima1 do que $clima2&#60;br/&#62;"); print "Prefiro o $clima1 do que $clima2&#60;br/&#62;"; print "Prefiro o ".$clima1." do &#8230; <a href="http://tilowr.com.br/exibindo-dados-no-navegador-com-php-e-as-funcoes-print-echo-printf-e-sprintf/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><strong>Print()</strong></p>
<p>A Função print() imprime dados no navegador de algumas formas diferentes, seguem alguns exemplos:</p>
<pre name="code" class="php">
&lt;?php
	$clima1 = "Calor";
	$clima2 = "Frio";

	print("Prefiro o $clima1 do que $clima2&lt;br/&gt;");
	print "Prefiro o $clima1 do que $clima2&lt;br/&gt;";
	print "Prefiro o ".$clima1." do que ".$clima2."&lt;br/&gt;";
?&gt;
</pre>
<blockquote><p>Atenção: na documentação do PHP não possui nenhuma forma tomada como regra, mostrando apenas que pode ser usada de maneiras diferentes. Porem na sintaxe oficial a forma com parênteses é mostrada como preferencial, porem a grande maioria dos programadores prefere não usar para otimizar o tempo.</p></blockquote>
<p><strong>Echo()</strong></p>
<p>Uma boa alternativa para o print() é a função echo() ele serve para os mesmos propositos de print e é bem adotada pelos programadores php embora hajam diferenças entre as duas sã quase que irrelevantes veremos a estrutura para comparar.</p>
<p><code>int print(argument)</code></p>
<p><code>void echo(string argument1 [, ...string argumentN])</code></p>
<p>como você pode ver pelo protótipo, echo() é capaz de imprimir diversas variáveis do tipo string separadas por virgula. Vejamos algumas formas de utilização do echo():</p>
<pre name="code" class="php">
&lt;?php
	$clima1 = "Calor";
	$clima2 = "Frio";

	echo("Prefiro o $clima1 do que $clima2&lt;br/&gt;");
	echo "Prefiro o $clima1 do que $clima2&lt;br/&gt;";
	echo "Prefiro o ".$clima1." do que ".$clima2."&lt;br/&gt;";
	echo $clima1, " e ", $clima2, " são tipos de climas.";
?&gt;
</pre>
<p>Se a sua intenção for enviar texto estático misturado com dinâmico, dê preferencia para printf() que será abordada a seguir, caso contrario echo() ou print() darão conta do trabalho.</p>
<blockquote><p>Atenção: Qual dos dois é mais rápido, note que echo é do tipo void e print retorna um inteiro, echo() apenas imprime o que está nele, já print(), retorna 0 para falha e 1 para sucesso.</p></blockquote>
<p><strong>Printf()</strong></p>
<p>Como citado anteriormente a função printf() é ideal para quem quer enviar uma combinação de texto estático e informações dinâmicas através de uma ou diversas variáveis. Ela tem duas vantagens, separa de forma organizada as informações e te dá total controle sobre os tipos de informações que serão impressas. Vejamos o protótipo da função pintf():</p>
<p><code>boolean printf(string format [, mixed args])</code></p>
<p>por exemplo, você pode inserir um valor dinâmico dentro de uma string estática:</p>
<pre name="code" class="php">
&lt;?php
	printf("Estoque é de %d garrafas", 52);
?&gt;
</pre>
<p>Note que %d representa um valor inteiro, se você tentar usar uma float ou um real ele não irá funcionar, segue uma tabela com alguns dos tipos aceitos:</p>
<table border="1" cellspacing="0" cellpadding="4" width="100%" bordercolor="#000000">
<colgroup>
<col width="128*"></col>
<col width="128*"></col>
</colgroup>
<tbody>
<tr valign="TOP">
<th width="50%">Tipo</th>
<th width="50%">Descrição</th>
</tr>
<tr valign="TOP">
<td width="50%">%b</td>
<td width="50%">Argumento considerado um inteiro; apresentado 			com um numero binário</td>
</tr>
<tr valign="TOP">
<td width="50%">%c</td>
<td width="50%">Argumento considerado um inteiro; apresentado 			com um valor correspondente em ASCII</td>
</tr>
<tr valign="TOP">
<td width="50%">%d</td>
<td width="50%">Argumento considerado um inteiro; apresentado 			com um numero decimal</td>
</tr>
<tr valign="TOP">
<td width="50%">%f</td>
<td width="50%">Argumento considerado numero de ponto 			flutuante; apresentado com um numero de ponto flutuante</td>
</tr>
<tr valign="TOP">
<td width="50%">%o</td>
<td width="50%">Argumento considerado um inteiro; apresentado 			com um numero octal</td>
</tr>
<tr valign="TOP">
<td width="50%">%s</td>
<td width="50%">Argumento considerado um string; apresentado 			com um numero string</td>
</tr>
<tr valign="TOP">
<td width="50%">%u</td>
<td width="50%">Argumento considerado um inteiro; apresentado 			com um numero decimal não assinado</td>
</tr>
<tr valign="TOP">
<td width="50%">%x</td>
<td width="50%">Argumento considerado um inteiro; apresentado 			com um numero hexadecimal em letras minusculas</td>
</tr>
<tr valign="TOP">
<td width="50%">%X</td>
<td width="50%">Argumento considerado um inteiro; apresentado 			com um numero hexadecimal em letras maiusculas</td>
</tr>
</tbody>
</table>
<p>Caso você queira utilizar mais de um valor pode passa os argumentos separados por virgulas repeitando a sequencia que foram declarados:</p>
<pre name="code" class="php">
&lt;?php
	printf("Estoque é de %d garrafas, a R$ %f cada", 52, 35.36);
?&gt;
</pre>
<p>Para ajustar a precisão use “.&lt;valor&gt;” como no exemplo a seguir:</p>
<pre name="code" class="php">
&lt;?php
	printf("Estoque é de %d garrafas, a R$ %.2f cada", 52, 35.36);
?&gt;
</pre>
<p><strong>Sprintf()</strong></p>
<p>A função sprintf() atribui o valor do resultado a uma variável ao invés de exibir na tela:</p>
<pre name="code" class="php">
&lt;?php
	$frase = sprintf("Estoque é de %d garrafas, a R$ %f cada", 52, 35.36);
?&gt;
</pre>
<h4  class="related_post_title">Leia Também:</h4><ul class="related_post"><li><a href="http://tilowr.com.br/comentar-codigo-em-php-com-sintaxe-c-shell-e-c/" title="Comentar código em PHP com Sintaxe C++, Shell e C">Comentar código em PHP com Sintaxe C++, Shell e C</a></li><li><a href="http://tilowr.com.br/wordpress-summit/" title="WordPress Summit">WordPress Summit</a></li><li><a href="http://tilowr.com.br/microsoft-tech%c2%b7ed-brasil-2010/" title="Microsoft Tech·Ed Brasil 2010">Microsoft Tech·Ed Brasil 2010</a></li><li><a href="http://tilowr.com.br/se-programacao-fosse-religiao-qual-seria-a-sua/" title="Se programação fosse religião, qual seria a sua?">Se programação fosse religião, qual seria a sua?</a></li><li><a href="http://tilowr.com.br/como-programadores-matam-dragoes/" title="Como programadores matam dragões">Como programadores matam dragões</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://tilowr.com.br/exibindo-dados-no-navegador-com-php-e-as-funcoes-print-echo-printf-e-sprintf/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Comentar código em PHP com Sintaxe C++, Shell e C</title>
		<link>http://tilowr.com.br/comentar-codigo-em-php-com-sintaxe-c-shell-e-c/</link>
		<comments>http://tilowr.com.br/comentar-codigo-em-php-com-sintaxe-c-shell-e-c/#comments</comments>
		<pubDate>Thu, 07 Apr 2011 12:09:52 +0000</pubDate>
		<dc:creator>Tilo</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[Comentário PHP]]></category>
		<category><![CDATA[Shell]]></category>
		<category><![CDATA[Sintaxe]]></category>

		<guid isPermaLink="false">http://tilowr.com.br/?p=1325</guid>
		<description><![CDATA[Comentar código é sempre importante, pois você nunca sabe quem vai ler seu código depois de você e também, porque depois de alguns meses é quase impossível você lembrar pra que serve cada coisa que você criou. O PHP possui &#8230; <a href="http://tilowr.com.br/comentar-codigo-em-php-com-sintaxe-c-shell-e-c/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Comentar  código é sempre importante, pois você nunca sabe quem vai ler seu código depois de você e também, porque depois de alguns meses é quase impossível você lembrar pra que serve cada coisa que você criou.</p>
<p>O PHP possui três formas de comentário, sintaxe C++ de linha única, sintaxe Shell e sintaxe C de linhas múltiplas.</p>
<p><strong>Sintaxe C++ de Linha Única</strong></p>
<p>Frequentemente os comentários possuem apenas uma linha por isso vamos começar pela sintaxe mais comum, a do C++ que o PHP suporta, ela é feita por duas barras (//) assim:</p>
<pre name="code" class="php">
&lt;?php
	// Titulo: Meu Titulo
	// Autor: Eu Mesmo
	echo “Exemplo de Comentário PHP”
?&gt;
</pre>
<p><strong>Sintaxe Shell</strong></p>
<p>A Sintaxe Shell utiliza uma Hash Mark para fazer o comentário e não precisa delimitar onde acaba o comentário pois o PHP interpreta apenas uma linha.</p>
<pre name="code" class="php">
&lt;?php
	# Titulo: Meu Titulo
	# Autor: Eu Mesmo
	echo “Exemplo de Comentário PHP”
?&gt;
</pre>
<p><strong>Sintaxe C de Linhas Múltiplas</strong></p>
<p>Muitas vezes montamos um métodos mais complexo e precisamos detalhar seu script ou até deixar comentários que sirvam de documentação futuramente.</p>
<pre name="code" class="php">
&lt;?php
	/*
		Titulo: Meu Titulo
		Autor: Eu Mesmo
	*/
	echo “Exemplo de Comentário PHP”
?&gt;
</pre>
<h4  class="related_post_title">Leia Também:</h4><ul class="related_post"><li><a href="http://tilowr.com.br/como-programadores-matam-dragoes/" title="Como programadores matam dragões">Como programadores matam dragões</a></li><li><a href="http://tilowr.com.br/se-programacao-fosse-religiao-qual-seria-a-sua/" title="Se programação fosse religião, qual seria a sua?">Se programação fosse religião, qual seria a sua?</a></li><li><a href="http://tilowr.com.br/exibindo-dados-no-navegador-com-php-e-as-funcoes-print-echo-printf-e-sprintf/" title="Exibindo dados no navegador com PHP e as funções print(), echo() printf() e sprintf()">Exibindo dados no navegador com PHP e as funções print(), echo() printf() e sprintf()</a></li><li><a href="http://tilowr.com.br/wordpress-summit/" title="WordPress Summit">WordPress Summit</a></li><li><a href="http://tilowr.com.br/microsoft-tech%c2%b7ed-brasil-2010/" title="Microsoft Tech·Ed Brasil 2010">Microsoft Tech·Ed Brasil 2010</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://tilowr.com.br/comentar-codigo-em-php-com-sintaxe-c-shell-e-c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Habilitando Short-Tags no PHP</title>
		<link>http://tilowr.com.br/habilitando-short-tags/</link>
		<comments>http://tilowr.com.br/habilitando-short-tags/#comments</comments>
		<pubDate>Wed, 06 Apr 2011 19:13:08 +0000</pubDate>
		<dc:creator>Tilo</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[htaccess]]></category>
		<category><![CDATA[ini_set]]></category>
		<category><![CDATA[php.ini]]></category>
		<category><![CDATA[Short-Tags]]></category>
		<category><![CDATA[short_open_tag]]></category>

		<guid isPermaLink="false">http://tilowr.com.br/?p=1319</guid>
		<description><![CDATA[Você pode habilitar short-tags de três formas diferentes: Configurando no arquivo php.ini: vá onde você instalou o php abra o arquivo php.ini procure a linha short_open_tag = off e mude para on. Nos arquivos httpd.conf ou .htaccess inserindo a seguinte &#8230; <a href="http://tilowr.com.br/habilitando-short-tags/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Você pode habilitar short-tags de três formas diferentes:</p>
<p>Configurando no arquivo php.ini:</p>
<p>vá onde você instalou o php abra o arquivo php.ini procure a linha</p>
<p style="padding-left: 30px;">short_open_tag = off e mude para on.</p>
<p>Nos arquivos httpd.conf ou .htaccess inserindo a seguinte linha:</p>
<p>php_admin_flag short_open_tag on</p>
<p>Ou direto no script de execução com o seguinte comando:</p>
<p>ini_set(“short_open_tag”,”on”);</p>
<h4  class="related_post_title">Leia Também:</h4><ul class="related_post"><li><a href="http://tilowr.com.br/php-sintaxe-padrao-short-tags-e-short-circuit/" title="PHP &#8211; Sintaxe Padrão, Short-Tags e Short-Circuit">PHP &#8211; Sintaxe Padrão, Short-Tags e Short-Circuit</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://tilowr.com.br/habilitando-short-tags/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP &#8211; Sintaxe Padrão, Short-Tags e Short-Circuit</title>
		<link>http://tilowr.com.br/php-sintaxe-padrao-short-tags-e-short-circuit/</link>
		<comments>http://tilowr.com.br/php-sintaxe-padrao-short-tags-e-short-circuit/#comments</comments>
		<pubDate>Wed, 06 Apr 2011 18:19:43 +0000</pubDate>
		<dc:creator>Tilo</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Short-Circuit]]></category>
		<category><![CDATA[Short-Tags]]></category>
		<category><![CDATA[Sintaxe Padrão]]></category>

		<guid isPermaLink="false">http://tilowr.com.br/?p=1314</guid>
		<description><![CDATA[Sintaxe Padrão: A Sintaxe delimitadora padrão do PHP abre com &#60;?php e termina com ?&#62; assim: &#60;?php echo “&#60;p&#62;Texto de Marcação&#60;/p&#62;”; ?&#62; Short-Tags Para quem não está muito afim de “gastar” teclado pode fazer isso de uma forma reduzida, utilizando &#8230; <a href="http://tilowr.com.br/php-sintaxe-padrao-short-tags-e-short-circuit/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><strong>Sintaxe Padrão:</strong></p>
<p>A Sintaxe delimitadora padrão do PHP abre com &lt;?php e termina com ?&gt; assim:</p>
<pre name="code" class="html">
&lt;?php
	echo “&lt;p&gt;Texto de Marcação&lt;/p&gt;”;
?&gt;
</pre>
<p><strong>Short-Tags</strong></p>
<p>Para quem não está muito afim de “gastar” teclado pode fazer isso de uma forma reduzida, utilizando da seguinte forma:</p>
<pre name="code" class="html">
&lt;?
	print “Exemplo de Short-Tags”;
?&gt;
</pre>
<p>porém, para poder utilizar as Short-Tags é preciso ativar a diretriz short_open_tag no php.ini, mas isso fica pra um próximo post.</p>
<p>Quando as Short-tags estiverem ativas, você pode omitir trechos do código para ser mais ágil, esta técnica é conhecida como short-circuit, vejam os exemplos à seguir:</p>
<pre name="code" class="html">
&lt;?=”este é um exemplo”;?&gt;
&lt;? echo “Este é outro exemplo”; ?&gt;
&lt;?php echo “Este é outro exemplo”; ?&gt;
</pre>
<blockquote><p>
Atenção: Short-Tags ajudam a reduzir código, porem eles conflitam com XML logo conflitaram com a sintaxe XHTM.
</p></blockquote>
<p>É bom lembrar que alguns editores (Front-Page) davam conflito com essa sintaxe e por isso poderia ser feito de outra forma, delimitando a àrea de script dessa forma:</p>
<pre name="code" class="html">
&lt;script language=”php”&gt;
	print “Exemplo”;
&lt;/script&gt;
</pre>
<p>é bom lembrar que o Front-Page tambem reconhece a sintaxe do ASP ficando assim:</p>
<pre name="code" class="html">
&lt;%
	print “Exemplo”;
%&gt;
</pre>
<blockquote><p>
Atenção: A Sintaxe do estilo ASP foi removida do PHP 6
</p></blockquote>
<h4  class="related_post_title">Leia Também:</h4><ul class="related_post"><li><a href="http://tilowr.com.br/habilitando-short-tags/" title="Habilitando Short-Tags no PHP">Habilitando Short-Tags no PHP</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://tilowr.com.br/php-sintaxe-padrao-short-tags-e-short-circuit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Corona SDK: Versão Windows e Novas Modalidades de Inscrição</title>
		<link>http://tilowr.com.br/corona-sdk-versao-windows-e-novas-modalidades-de-inscricao/</link>
		<comments>http://tilowr.com.br/corona-sdk-versao-windows-e-novas-modalidades-de-inscricao/#comments</comments>
		<pubDate>Mon, 28 Feb 2011 14:30:33 +0000</pubDate>
		<dc:creator>willian</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Dicas]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[JavaScript, jQuery & Ajax]]></category>
		<category><![CDATA[corona]]></category>
		<category><![CDATA[ios]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[mac]]></category>
		<category><![CDATA[sdk]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://tilowr.com.br/?p=1307</guid>
		<description><![CDATA[Há algum tempo, postei sobre o Corona SDK, um framework que gera builds tanto em iOS quanto Android utilizando a linguagem de script Lua. Pouco depois do meu post, saíram atualizações importantes sobre o framework: Versão Windows - A versão &#8230; <a href="http://tilowr.com.br/corona-sdk-versao-windows-e-novas-modalidades-de-inscricao/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Há algum tempo, <a href="http://tilowr.com.br/corona-framework-de-desenvolvimento-para-iphone-e-android/" target="_blank">postei</a> sobre o Corona SDK, um framework que gera builds tanto em iOS quanto Android utilizando a linguagem de script Lua. Pouco depois do meu post, saíram atualizações importantes sobre o framework:</p>
<p><strong>Versão Windows -</strong> A versão beta pública do SDK para Windows já pode ser baixada. Porém, logicamente, só gera builds para Android.</p>
<p><strong>Novas formas de inscrição -</strong> Além da versão Pro, que comentei no post anterior, que custa US$ 349/ano. Temos as versões Indie iOS Indie Android, cada uma US$ 199/ano. Isso é legal, pois se você pretende desenvolver só para um ou outro, pode pagar um valor menor (tendo a opção da plataforma Windows na versão Android).</p>
<p>Por enquanto é isso, estamos atentos a novas atualizações e postaremos elas aqui!</p>
<p>Até o próximo post e bom desenvolvimento!</p>
<h4  class="related_post_title">Leia Também:</h4><ul class="related_post"><li><a href="http://tilowr.com.br/corona-framework-de-desenvolvimento-para-iphone-e-android/" title="Corona: Framework de desenvolvimento para iPhone e Android!">Corona: Framework de desenvolvimento para iPhone e Android!</a></li><li><a href="http://tilowr.com.br/printscreen-no-ipadiphoneandroid/" title="PrintScreen no iPad/iPhone/Android">PrintScreen no iPad/iPhone/Android</a></li><li><a href="http://tilowr.com.br/css-personalizado-para-mudanca-de-orientacao-no-iphone-e-ipad/" title="CSS Personalizado para mudança de orientação no iPhone e iPad">CSS Personalizado para mudança de orientação no iPhone e iPad</a></li><li><a href="http://tilowr.com.br/detectar-mudanca-de-orientacao-no-iphone-e-ipad-com-javascript/" title="Detectar mudança de orientação no iPhone e iPad com JavaScript">Detectar mudança de orientação no iPhone e iPad com JavaScript</a></li><li><a href="http://tilowr.com.br/pinch-zoom-com-javascript-ongesturechange-e-style-zoom/" title="Pinch zoom com javascript (ongesturechange e style.zoom)">Pinch zoom com javascript (ongesturechange e style.zoom)</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://tilowr.com.br/corona-sdk-versao-windows-e-novas-modalidades-de-inscricao/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ASP.NET MVC View Engines: WebForms, NHaml, Spark e Razor!</title>
		<link>http://tilowr.com.br/asp-net-mvc-view-engines-webforms-nhaml-spark-e-razor/</link>
		<comments>http://tilowr.com.br/asp-net-mvc-view-engines-webforms-nhaml-spark-e-razor/#comments</comments>
		<pubDate>Mon, 28 Feb 2011 09:30:10 +0000</pubDate>
		<dc:creator>willian</dc:creator>
				<category><![CDATA[C# & ASP.NET]]></category>
		<category><![CDATA[ASP.NET MVC]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[NHaml]]></category>
		<category><![CDATA[Razor]]></category>
		<category><![CDATA[Spark]]></category>
		<category><![CDATA[View]]></category>
		<category><![CDATA[View Engine]]></category>
		<category><![CDATA[WebForms]]></category>

		<guid isPermaLink="false">http://tilowr.com.br/?p=1293</guid>
		<description><![CDATA[Desde meu primeiro contato com desenvolvimento web, sempre utilizei tecnologias Microsoft. Lá em 2001 comecei a mexer com ASP3 e em 2004 comecei a trabalhar profissionalmente, já com ASP.NET. Desde o ASP3, as coisas não mudaram muito no que se &#8230; <a href="http://tilowr.com.br/asp-net-mvc-view-engines-webforms-nhaml-spark-e-razor/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div>Desde meu primeiro contato com desenvolvimento web, sempre utilizei tecnologias Microsoft. Lá em 2001 comecei a mexer com ASP3 e em 2004 comecei a trabalhar profissionalmente, já com ASP.NET. Desde o ASP3, as coisas não mudaram muito no que se refere ao HTML, a tecnologia avançou e mudou muito do lado do servidor, mas HTML sempre foi tratado da mesma forma.</div>
<div>Com a popularização dos frameworks MVC, uma nova abordagem veio em relação ao HTML, já que cada parte do MVC (Model, View, Controller) pode funcionar e agir da forma que for concebido no framework.</div>
<div></div>
<div>Um padrão que apareceu em relação a View, é que o HTML dela é gerado por meio de View Engines. Ou seja, você não usa mais HTML e sim uma estrutura que gera HTML.</div>
<div>Isso pode as vezes não estar claro na mente do desenvolvedor. Afinal, ao olhar uma View do ASP.NET MVC, o que está ali é basicamente HTML, salvo algumas marcações de código da Model, como era no ASP3.</div>
<div>Primeiramente é esse tipo de visão que precisa ser removido de sua cabeça. Aquilo não é HTML, é uma View Engine, mesmo que muitas delas utilizem HTML junto. A View Engine padrão utilizada pelo ASP.NET MVC é a WebForms (NÃO confundir com o ASP.NET Web Forms), que é basicamente a mesma do ASP3, porém com algumas coisas novas.</div>
<div></div>
<div>O que ajudará a entender como uma View Engine funciona é compará-las.</div>
<div></div>
<div>No caso do ASP.NET MVC, 4 View Engines se tornaram mais populares, ou por serem padrão e bem conhecidas, ou por mostrarem bons recursos de utilização. São elas:</div>
<div></div>
<div><strong>WebForms -</strong> é a View Engine padrão do ASP.NET MVC e também a mais antiga. Existe desde 1996 quando veio com o ASP3 e desde lá não mudou muita coisa. Vejamos um exemplo do uso do WebForms:</div>
<div></div>
<div>
<div id="attachment_1294" class="wp-caption aligncenter" style="width: 512px"><a href="http://tilowr.com.br/wp-content/uploads/2011/02/webforms_viewengine.png" rel="lightbox[1293]" title="ASP.NET MVC View Engines: WebForms, NHaml, Spark e Razor!"><img class="size-full wp-image-1294" src="http://tilowr.com.br/wp-content/uploads/2011/02/webforms_viewengine.png" alt="WebForms View Engine" width="502" height="441" /></a><p class="wp-caption-text">Créditos: Channel 9</p></div>
</div>
<div></div>
<div>Podemos perceber que a principal característica do WebForms é a delimitação do trecho de código com &lt;% e %&gt;, o que é uma vantagem, já que fica bem visível onde começa e acaba HTML e código. Porém, dependendo da complexidade da vier, temos muita coisa escrita na página, muitos &lt;% e %&gt; abrindo e fechando sessões de código o tempo todo.</div>
<div></div>
<div><strong>NHaml -</strong> O Haml é um padrão fortemente adotado no Framework Rails, que foi portado pra ASP.NET MVC na forma do NHaml.</div>
<div>A abordagem dele é bem interessante, já que nele você NÃO USA HTML. Ele é composto de marcações próprias que no final gerarão o código HTML. Vejamos o exemplo anterior agora em NHaml:</div>
<div></div>
<div>
<div id="attachment_1295" class="wp-caption aligncenter" style="width: 519px"><a href="http://tilowr.com.br/wp-content/uploads/2011/02/nhaml_viewengine.png" rel="lightbox[1293]" title="ASP.NET MVC View Engines: WebForms, NHaml, Spark e Razor!"><img class="size-full wp-image-1295" src="http://tilowr.com.br/wp-content/uploads/2011/02/nhaml_viewengine.png" alt="NHaml View Engine" width="509" height="213" /></a><p class="wp-caption-text">Créditos: Channel 9</p></div>
</div>
<div></div>
<div>Uma desvantagem do NHaml é que o projeto, apesar de open-source, não é muito ativo, tanto que ainda não temos NHaml compatível com o ASP.NET MVC 3. Algumas outras coisas dele não são tão “elegantes”, se o compararmos com as outras View Engines. Porém, se a idéia de não usar HTML e testar algo novo (desde que você não use MVC3) for interessante. Não perca tempo e experimente!</div>
<div></div>
<div><strong>Spark -</strong> Essa é uma View Engine muito interessante e basicamente é o inverso do Nhaml. Enquanto no NHaml você não tem nenhum HTML, no Spark você trabalha dentro do HTML. As marcações do Spark são feitas dentro das tags HTML:</div>
<div></div>
<div>
<div id="attachment_1296" class="wp-caption aligncenter" style="width: 519px"><a href="http://tilowr.com.br/wp-content/uploads/2011/02/spark_viewengine.png" rel="lightbox[1293]" title="ASP.NET MVC View Engines: WebForms, NHaml, Spark e Razor!"><img class="size-full wp-image-1296" src="http://tilowr.com.br/wp-content/uploads/2011/02/spark_viewengine.png" alt="Spark View Engine" width="509" height="509" /></a><p class="wp-caption-text">Créditos: Channel 9</p></div>
</div>
<div></div>
<div>Outra vantagem é que o projeto Spark é bem ativo e sempre o estão atualizando. Ele também já é compatível com ASP.NET MVC 3.</div>
<div>Além disso, o Spark fornece recursos próprio que ajudam na geração de código nas Views. Por meio de configurações você consegue criar tas próprias que irão gerar trechos específicos de HTML. É algo semelhante aos Helpers do MVC, porém você o escreve como se fosse uma tag HTML.</div>
<div>Se você tem vontade de testar algo novo e fora do universo Microsoft (Spark também é open-source), eu recomendo o Spark.</div>
<div></div>
<div><strong>Razor -</strong> Deixado por último, porém não menos importante, o Razor é a View Engine mais nova de todas (2011) e vem junto com o ASP.NET MVC 3. Ou seja, ao criar uma  View, você terá como opções de View Engine o WebForms e o Razor. Mas qual a idéia por trás do Razor?</div>
<div>Basicamente, a Microsoft resolveu atualizar o que vinha igual desde 1996, porém sem substituir o já tão conhecido WebForms. Você tem ele lá, porém tem uma outra  View Engine mais fluida e prática pra experimentar, e essa, eu recomendo fortemente!</div>
<div>Fluidez, esse é o adjetivo que vem a mente ao ver uma View utilizando Razor. Reparem:</div>
<div></div>
<div>
<div id="attachment_1297" class="wp-caption aligncenter" style="width: 519px"><a href="http://tilowr.com.br/wp-content/uploads/2011/02/razor_viewengine.png" rel="lightbox[1293]" title="ASP.NET MVC View Engines: WebForms, NHaml, Spark e Razor!"><img class="size-full wp-image-1297" src="http://tilowr.com.br/wp-content/uploads/2011/02/razor_viewengine.png" alt="Razor View Engine" width="509" height="427" /></a><p class="wp-caption-text">Créditos: Channel 9</p></div>
</div>
<div></div>
<div>Diferente do WebForms (que separa bem código e HTML), do NHaml (que não possui HTML) e do Spark (que coloca o código dentro das tas HTML), o Razor é fluido, o html e o código “conversam” de forma simples e direta. Isso pode ser visto de forma negativa, já que em uma View mais complexa, fica um tanto estranho perceber onde começa e acabam instruções e HTML. Porém, com o tempo isso deixa de ser um empecilho e no final passa a ser mais interessante desenvolver assim. Mas é questão de gosto, e de experimentar uma abordagem nova também.</div>
<div>Acho estranho alguns desenvolveres criticarem o Razor, pois quando chegou o ASP.NET MVC, a primeira crítica foi de ele usar WebForms nas Views.</div>
<div></div>
<div>Acho que o interessante, ao invés de pensar que as View Engines estão aí pra competir, deve-se pensar que elas estão aí pra te dar novas opções de desenvolver suas Views em MVC, ainda mais agora que esse padrão está virando uma realidade também dentro do mundo Microsoft.</div>
<div></div>
<div>Por enquanto é isso. Experimentem e digam aí nos comentários quais você mais gostou. Quem já usou View Engines em outras tecnologias (PHP, Rails, Django) também está convidado a participar! Até o próximo post e bom desenvolvimento!</div>
<h4  class="related_post_title">Leia Também:</h4><ul class="related_post"><li><a href="http://tilowr.com.br/otimizando-desenvolvimento-html-com-zen-coding-e-notepad-instalacao-dica/" title="Otimizando desenvolvimento HTML com Zen-coding e Notepad++ ( Instalação + Dica )">Otimizando desenvolvimento HTML com Zen-coding e Notepad++ ( Instalação + Dica )</a></li><li><a href="http://tilowr.com.br/se-programacao-fosse-religiao-qual-seria-a-sua/" title="Se programação fosse religião, qual seria a sua?">Se programação fosse religião, qual seria a sua?</a></li><li><a href="http://tilowr.com.br/hacks-la-e-de-volta-outra-vez/" title="Hack&#8217;s, lá e de volta outra vez.">Hack&#8217;s, lá e de volta outra vez.</a></li></ul>]]></content:encoded>
			<wfw:commentRss>http://tilowr.com.br/asp-net-mvc-view-engines-webforms-nhaml-spark-e-razor/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

