<?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>BitCodes</title>
	<atom:link href="http://bitcodes.hrangel.com.br/index.php/feed/" rel="self" type="application/rss+xml" />
	<link>http://bitcodes.hrangel.com.br</link>
	<description>Códigos, dicas e artigos em geral relacionados a programação</description>
	<lastBuildDate>Sun, 04 May 2008 18:55:46 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.5</generator>
		<item>
		<title>Unificando</title>
		<link>http://bitcodes.hrangel.com.br/index.php/unificando/</link>
		<comments>http://bitcodes.hrangel.com.br/index.php/unificando/#comments</comments>
		<pubDate>Sun, 04 May 2008 18:55:46 +0000</pubDate>
		<dc:creator>Rangel</dc:creator>
				<category><![CDATA[programação]]></category>

		<guid isPermaLink="false">http://bitcodes.hrangel.com.br/index.php/unificando/</guid>
		<description><![CDATA[Galera, Exportei todo o BitCodes para o Rangel Avulso , em 1 semana vou desativar de vez esse blog e ficarei só com o principal mesmo. Para quem assina ou visita basta apontar browser ou o agregador para www.hrangel.com.br Mas para quem gosta do conteúdo daqui, não precisa se preucupar, continuarei escrevendo sobre o assunto [...]]]></description>
			<content:encoded><![CDATA[<p>Galera,</p>
<p>Exportei todo o BitCodes para o <a href="http://www.hrangel.com.br" target="_blank">Rangel Avulso</a> , em 1 semana vou desativar de vez esse blog e ficarei só com o principal mesmo.</p>
<p>Para quem assina ou visita basta apontar browser ou o agregador para www.hrangel.com.br</p>
<p>Mas para quem gosta do conteúdo daqui, não precisa se preucupar, continuarei escrevendo sobre o assunto numa frequência maior (assim espero).</p>
<p>Abraços a todos</p>
]]></content:encoded>
			<wfw:commentRss>http://bitcodes.hrangel.com.br/index.php/unificando/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Instalando PHP + MySQL no IIS7 do Vista</title>
		<link>http://bitcodes.hrangel.com.br/index.php/instalando-php-mysql-no-iis7-do-vista/</link>
		<comments>http://bitcodes.hrangel.com.br/index.php/instalando-php-mysql-no-iis7-do-vista/#comments</comments>
		<pubDate>Thu, 10 Apr 2008 12:30:13 +0000</pubDate>
		<dc:creator>Rangel</dc:creator>
				<category><![CDATA[iis7]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://bitcodes.hrangel.com.br/index.php/instalando-php-mysql-no-iis7-do-vista/</guid>
		<description><![CDATA[Tive que formatar meu notebook há pouco tempo atrás e por isso precisei reinstalar esse pacote básico que qualquer desenvolvedor no windows utiliza. Para a instalação utilizei: IIS7 &#8211; Se você não tiver instale pelo: Program and Features &#62; Turn Windows features on or off &#62; IIS7 PHP &#8211; A última versão em ZIP. MySQL [...]]]></description>
			<content:encoded><![CDATA[<p>Tive que formatar meu notebook há pouco tempo atrás e por isso precisei reinstalar esse pacote básico que qualquer desenvolvedor no windows utiliza.</p>
<p>Para a instalação utilizei:</p>
<p>IIS7 &#8211; Se você não tiver instale pelo: Program and Features &gt;  Turn Windows features on or off &gt; IIS7</p>
<p><a href="http://www.php.net/" title="PHP" target="_blank">PHP</a> &#8211; A última versão em <a href="http://www.php.net/downloads.php" title="PHP Downloads Area" target="_blank">ZIP</a>.</p>
<p><a href="http://mysql.com/" title="MySQL" target="_blank">MySQL</a> &#8211;  A última versão do <a href="http://dev.mysql.com/downloads/mysql/5.0.html#downloads" title="MySQL Community Server">Community Server</a>, a versão Essentials é suficiente.</p>
<p><strong>Primeiro Passo &#8211; PHP</strong></p>
<p>Extrai o PHP para a pasta que quiser (no meu caso utilizei C:\Program Files\PHP\).<br />
Em seguida, para instalar o PHP no IIS7 basta baixar o BAT feito pelo <a href="http://blogs.msdn.com/david.wang/default.aspx" title="David Wang Blog" target="_blank">David Wang</a> <a href="http://blogs.msdn.com/david.wang/archive/2006/06/21/HOWTO_Install_and_Run_PHP_on_IIS7_Part_2.aspx" title="BAT File To Install PHP on IIS7" target="_blank">nesse artigo</a>. Eu fiz algumas alterações para que o BAT já copie o PHP.INI para a pasta Windows.<br />
Basta baixar o <a href="http://bitcodes.hrangel.com.br/wp-content/uploads/2008/04/phpinstall.zip" title="Bat para Instalar PHP no IIS7 do Vista">arquivo BAT zipado</a>.</p>
<p><strong>Segundo Passo &#8211; MySQL</strong></p>
<ol>
<li>Faça a instalação do MySQL normal utilizando o setup</li>
<li>Em seguida você deve copiar o arquivo libmysql.dll (que pode ser encontrado na pasta de instalação do PHP) para a pasta C:\Windows\System32</li>
<li>Edite arquivo PHP.INI (que está na pasta C:\Windows\)</li>
<li>Encontre a linha que contém <strong>extension_dir = “./”</strong>, altere o valor para a pasta de extensions do seu PHP (no meu caso ficaria extension_dir = &#8220;C:\Program Files\PHP\ext&#8221;) e retire o comentário (basta remover o &#8216;;&#8217; que vem antes do texto caso tenha algum)</li>
<li>Encontre a linha que contém <strong>extension=php_mysql.dll</strong> e retire o cometário  (basta remover o &#8216;;&#8217; que vem antes do texto caso tenha algum)</li>
<li>Salve o Arquivo</li>
</ol>
<p>Para finalizar basta reiniciar seu IIS e testar abrindo via browser (dentro do servidor) qualquer arquivo que contenha o código &lt;?php phpinfo();?&gt;, lá deve mostrar que a extensão do PHP foi instalado com sucesso.</p>
<p>Espero que ajude alguém.</p>
<p>Qualquér dúvida ou comentário é só deixar ai embaixo!</p>
]]></content:encoded>
			<wfw:commentRss>http://bitcodes.hrangel.com.br/index.php/instalando-php-mysql-no-iis7-do-vista/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Acessibilidade em .NET #1 &#8211; Preenchendo o Alt de um asp:Hyperlink</title>
		<link>http://bitcodes.hrangel.com.br/index.php/acessibilidade-em-net-1-preenchendo-o-alt-de-um-asphyperlink/</link>
		<comments>http://bitcodes.hrangel.com.br/index.php/acessibilidade-em-net-1-preenchendo-o-alt-de-um-asphyperlink/#comments</comments>
		<pubDate>Wed, 28 Nov 2007 09:56:00 +0000</pubDate>
		<dc:creator>Rangel</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[acessibilidade]]></category>
		<category><![CDATA[c#]]></category>

		<guid isPermaLink="false">http://bitcodes.hrangel.com.br/index.php/acessibilidade-em-net-1-preenchendo-o-alt-de-um-asphyperlink/</guid>
		<description><![CDATA[Começando uma série de posts rápidos sobre como utilizar ASP.NET e manter seu site correto de acordo com os padrões de acessibilidade do WCAG, hoje vou mostrar como fazer com que um asp:Hyperlink (que usa imagem) mostrar o atributo AlternateText &#8211; mais conhecido como alt pra quem trabalha com HTML. O asp:Hyperlink é ideal para [...]]]></description>
			<content:encoded><![CDATA[<p>Começando uma série de posts rápidos sobre como utilizar <strong>ASP.NET</strong> e manter seu site correto de acordo com os padrões de <strong>acessibilidade</strong> do <a href="http://www.w3.org/TR/WAI-WEBCONTENT/" title="WCAG 1.0" target="_blank">WCAG</a>, hoje vou mostrar como fazer com que um <strong>asp:Hyperlink</strong> (que usa imagem) mostrar o atributo <strong>AlternateText</strong> &#8211; mais conhecido como alt pra quem trabalha com HTML.</p>
<p>O <strong>asp:Hyperlink</strong> é ideal para quando queremos fazer um link simples para outra página que não exige ação em code-behind (Server-Side) mas que esse link seja dinâmico, pois é mais fácil trabalhar com os componentes (webcontrols) já criados.</p>
<p>Para isso o Hyperlink conta com um atributo chamado <strong>NavigateUrl</strong>, que, como o próprio nome diz, é onde você deve preencher a URL alvo do seu Link, seja programaticamente ou fixo no próprio ASPX.</p>
<p>Agora vem o X da questão caso você queira fazer um link usando imagem (sem ter ação server side) é só preencher o atributo <strong>ImageUrl</strong> com o endereço da imagem, e para que o <strong>alt</strong> da imagem (que vai ser retornado para o browser) venha preenchido basta setar o valor desejado no atributo Text do <strong>asp:Hyperlink</strong>.</p>
<p>Tranquilo não?</p>
<p>Preenchendo isso além de seguir os padrões da <strong>W3C</strong> o seu site ainda fica mais acessível, <strike>ou seja, mais visitas para ele e mais chances de clicks do adsense</strike>, há ainda muitas outras formas de melhorarmos a <strong>acessibilidade</strong> com <strong>ASP.NET</strong>, vou tentar escrever pelo menos uma por dia.</p>
<p>Enquanto isso leiam os textos do <a href="http://brunotorres.net/" target="_blank" title="BrunoTorres Blog">BrunoTorres</a> e do grupo <a href="http://acessodigital.net/" title="Grupo AcessoDigital, website com artigos e informações sobre acessibilidade" target="_blank">AcessoDigital</a>, ambos tem informações valiosas sobre acessibilidade, e se sobrar um tempinho dêem um pulo no <a href="http://www.hrangel.com.br" title="Rangel Avulso Blog">meu outro blog de idéias Avulsas</a>.</p>
<p><strong>[UPDATE]</strong>Outro site muito legal para acessar é o <a href="http://www.bengalalegal.com/" title="Bengala Legal" target="_blank">BengalaLegal do MAQ</a>.<strong>[/UPDATE]</strong></p>
<p>Até!</p>
<p>0100100001010010</p>
]]></content:encoded>
			<wfw:commentRss>http://bitcodes.hrangel.com.br/index.php/acessibilidade-em-net-1-preenchendo-o-alt-de-um-asphyperlink/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Reduzindo o ViewState</title>
		<link>http://bitcodes.hrangel.com.br/index.php/reduzindo-o-viewstate/</link>
		<comments>http://bitcodes.hrangel.com.br/index.php/reduzindo-o-viewstate/#comments</comments>
		<pubDate>Fri, 03 Aug 2007 10:38:52 +0000</pubDate>
		<dc:creator>Rangel</dc:creator>
				<category><![CDATA[c#]]></category>
		<category><![CDATA[programação]]></category>

		<guid isPermaLink="false">http://bitcodes.hrangel.com.br/index.php/reduzindo-o-viewstate/</guid>
		<description><![CDATA[Não sou muito fã de tecnologias Microsoft, mas acho que o .NET tem lá suas vantagens, uma delas pode ser o ViewState, se você está se perguntando por que o &#8220;pode ser&#8221; é bem simples, quando seu ViewState sai do controle pode ter certeza, que seus clientes ou usuários vão começar a reclamar de lentidão [...]]]></description>
			<content:encoded><![CDATA[<p>Não sou muito fã de tecnologias Microsoft, mas acho que o .NET tem lá suas vantagens, uma delas pode ser o ViewState, se você está se perguntando por que o &#8220;pode ser&#8221; é bem simples, quando seu <strong>ViewState</strong> sai do controle pode ter certeza, que seus clientes ou usuários vão começar a reclamar de lentidão</p>
<p>1 &#8211; O que é <strong>ViewState</strong></p>
<p>ViewState é a tecnologia utilizada pelo .NET da Microsoft  para facilitar a vida dos desenvolvedores, a funcionalidade básica dele é manter dados (ou configurações) da página entre postbacks (reload), como textos dinâmicos que são alterados de acordo com alguma ação na página, ou linhas de um grid que mudam a formatação dependendo dos dados que sâo inseridos nela.</p>
<p>2 &#8211; Como é na prática (se você não estiver interessado na implementação vá para o item 3)</p>
<p>O .NET cria (ou renderiza) em sua página algumas funções JavaScript e alguns componentes escondidos (input hidden do html), em um deles é feita a mágica do ViewState onde os dados sâo encriptados e formam uma grande String, quando sua página efetua um PostBack, o .NET decripta esses dados e recarrega suas configurações nos devidos locais.</p>
<p>3 &#8211; Me mostre o problema</p>
<p>O problema é quando começcamos a usar o <strong>ViewState </strong>demais guardando objetos (sim você pode guardar, desde que sejam Serializable) , ou até informação demais, já vi gente guardar a mesma lista que tinha em uma tabela lá.  O ViewState começa a ficar grande demais e derrubando a performance da página (localmente tudo parece perfeito &#8211; em 99% dos casos).</p>
<p>4 &#8211; Como resolver e <strong>reduzir </strong>o <strong>ViewState</strong></p>
<p>Aí vão algumas dicas que aprendi durante o percurso de <strong>ViewState</strong>&#8216;s gigantes (páginas de até 1,5 MB)</p>
<p><strong>Coloque no HTML o que é fixo</strong><br />
Tente deixar o máximo de configurações fixas na página (HTML), Labels, TextBox, Combos que tiverem valores fixos adicione os mesmos direto na página, adiciona-los programaticamente vai só lhe trazer problemas já que o ViewState aumentará sem necessidade, configurações como tamanho, maxlength, cor, ou seja, tudo que não for variável coloque na própria página e importante sete o <strong>EnableViewState</strong> desse componente como <strong>false</strong>.</p>
<p><strong>Não para objetos sim para IDs</strong><br />
Troque os objetos (se vierem de algum banco de dados) que você guarda por ID&#8217;s (algum tipo de código de identificação) e recarrege eles através do banco quando seus dados originais forem necessários.</p>
<p><strong>Se for necessário mesmo use String<br />
</strong>Se for realmente necessário usar o <strong>ViewState </strong>procure pelo menos salvar sempre <strong>String</strong>s, o porque disso é que o ViewState (na verdade a classe que faz o Encoding) dos objetos no ViewState é feita para Strings, por exemplo, salvar um array de números é muito melhor (e menor) feito se eles forem em String do que em int.</p>
<p>Essas são as dicas básicas, achei boas refrências para melhorar diverseos componentes, um deles ( e o que faz muita  diferença) é o <a href="http://www.codeproject.com/aspnet/DataGridViewState.asp" title="DataGrid's ViewState optimization" target="_blank">Datagrid que você encontrará boas informações (em inglês) no CodeProject</a>.</p>
<p>Saiba Mais (<strong>recomendo</strong>)<a href="http://www.codeproject.com/aspnet/hmvsiooc.asp" title="Help! My ViewState Is Out Of Control" target="_blank">:<br />
Help! My ViewState Is Out Of Control</a><br />
<a href="http://www.codeproject.com/aspnet/DataGridViewState.asp" title="DataGrid's ViewState optimization" target="_blank">DataGrid&#8217;s ViewState optimization</a></p>
<p>Qualquer dúvida pode me perguntar que estamos ai pra isso!</p>
<p>Até!</p>
<p>0100100001010010</p>
]]></content:encoded>
			<wfw:commentRss>http://bitcodes.hrangel.com.br/index.php/reduzindo-o-viewstate/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Assembly Strong Naming, Assinando sua DLL</title>
		<link>http://bitcodes.hrangel.com.br/index.php/assembly-strong-naming-assinando-sua-dll/</link>
		<comments>http://bitcodes.hrangel.com.br/index.php/assembly-strong-naming-assinando-sua-dll/#comments</comments>
		<pubDate>Tue, 31 Jul 2007 21:59:00 +0000</pubDate>
		<dc:creator>Rangel</dc:creator>
				<category><![CDATA[c#]]></category>
		<category><![CDATA[programação]]></category>

		<guid isPermaLink="false">http://bitcodes.hrangel.com.br/index.php/assembly-strong-naming-assinando-sua-dll/</guid>
		<description><![CDATA[Assinar uma DLL é bem simples, e como todo bom programador vou direto ao ponto. No VS 2003 1 &#8211; Crie um arquivo com uma key usando o sn.exe via linha de comando, por exemplo: A &#8211; Iniciar &#62; Executar &#62; cmd B &#8211; Acesse a pasta PastadoVS2003\SDK\v1.1\Bin C -Execute: sn -k MinhaKey.snk Pronto, arquivo [...]]]></description>
			<content:encoded><![CDATA[<p>Assinar  uma DLL é bem simples, e como todo bom programador vou direto ao ponto.</p>
<p><strong>No VS 2003</strong></p>
<p>1 &#8211; Crie um arquivo com uma key usando o <span alt="Local: PastadoVS2003/" style="cursor: crosshair">sn.exe</span> via linha de comando, por exemplo:<br />
A &#8211; Iniciar &gt; Executar &gt; cmd<br />
B &#8211; Acesse a pasta PastadoVS2003\SDK\v1.1\Bin<br />
C -Execute:<br />
<code>sn -k MinhaKey.snk</code></p>
<p>Pronto, arquivo criado chamando MinhaKey.snk na mesma pasta</p>
<p>2 &#8211; Agora copie para onde você quiser (eu copio normalmente para a raiz do Projeto)</p>
<p>3 &#8211; Faça o Link para o Assembly.cs ou Assembly.vb, exemplo (em c# pois trabalho com ela) adicionado essas linhas no final do arquivo (se já existirem substitua, claro):<code><br />
[assembly: AssemblyDelaySign(true)]<br />
[assembly: AssemblyKeyFile("..\\..\\MinhaKey.snk")]<br />
</code><br />
Estou usando o &#8220;..\\..\\&#8221; pois o compilador sempre vai verificar a referência a partir do diretório de compilação. que no meu caso é bin/Release.</p>
<p><strong>No VS 2005</strong></p>
<p>1 &#8211; Clique com o botão direito no Projeto e depois em Properties<br />
2 &#8211; Vá até a aba Signing<br />
3 &#8211; Selecione &#8220;Sign the assembly&#8221; e se você não tiver um arquivo .snk (veja passo 1 do VS2003) basta selecionar a opção New</p>
<p>Basicamente é isso, se você tiver mais algumas dúvidas deixe comentários ou entre em contato via email.<br />
Outras referências mais complicadas mas mais detalhadas:<br />
<a href="http://www.ondotnet.com/pub/a/dotnet/2003/04/28/strongnaming.html" title="The Secrets of Strong Naming" target="_blank">The Secrets of Strong Naming</a></p>
<p>Até!</p>
<p>0100100001010010</p>
]]></content:encoded>
			<wfw:commentRss>http://bitcodes.hrangel.com.br/index.php/assembly-strong-naming-assinando-sua-dll/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Developer Apps #1 &#8211; Notepad++</title>
		<link>http://bitcodes.hrangel.com.br/index.php/developer-apps-1-notepad/</link>
		<comments>http://bitcodes.hrangel.com.br/index.php/developer-apps-1-notepad/#comments</comments>
		<pubDate>Tue, 12 Jun 2007 01:15:49 +0000</pubDate>
		<dc:creator>Rangel</dc:creator>
				<category><![CDATA[Outros]]></category>
		<category><![CDATA[programação]]></category>

		<guid isPermaLink="false">http://bitcodes.hrangel.com.br/index.php/developer-apps-1-notepad/</guid>
		<description><![CDATA[Para aqueles desenvolvedores que estão cansados de abrir seus arquivos com código-fonte e não querem ter que esperar abrir na sua IDE que demora pra carregar habitual (para casos que precisamos vizualizar o arquivo apensar para tirar um dúvida ou confirmar se um código se encontra lá), eis a resposta: Notepad++ Como o próprio nome [...]]]></description>
			<content:encoded><![CDATA[<p>Para aqueles desenvolvedores que estão cansados de abrir seus arquivos com código-fonte e não querem ter que esperar abrir na sua IDE <strike>que demora pra carregar</strike> habitual (para casos que precisamos vizualizar o arquivo apensar para tirar um dúvida ou confirmar se um código se encontra lá), eis a resposta: <a href="http://notepad-plus.sourceforge.net/" title="Notepad++" target="_blank">Notepad++</a></p>
<p>Como o próprio nome já diz é um Notepad Turbinado.  Traz além das funções básicas de um editor de texto <strong>leve</strong> e eficiente, funções excelentes para desenvolvedores de maneira geral, mas ainda mais para desenvolvedores Web (leia php, asp, html ou css) que não precisam recompilar códigos.</p>
<p>O programa conta com funcionalidades como auto-complete de funções para diversas linguages (na verdade para a maioria que eu conheço), funções de auto identação além de dar a possibilidade de highlight do código por cores, tudo isso em uma interface limpa e de fácil personalização.</p>
<p>O programa já conta com uma série de plugins (muitos deles já estão por padrão na versão do programa), e aparentemente é fácil para criar novos (para aqueles que tem conhecimento em C).</p>
<p>Para melhorar ainda mais o download é free por se tratar de um projeto Open Source, muito aconselhado como editor rápido da grande maioria de arquivos de texto das inúmeras linguagens que conhecemos, para os <strike>programadores</strike> desenvolvedores de sistema que necessitam sempre daquela alteração rápida e de última hora com o sistema já publicado.</p>
<p>O download pode ser feito <a href="http://notepad-plus.sourceforge.net/uk/download.php" title="Notepad++ Download" target="_blank">aqui</a> e para aqueles que quiserem ver algumas imagens antes de fazer downloads acesse <a href="http://notepad-plus.sourceforge.net/uk/screenshots.php" title="Notepad++ Screenshots" target="_blank">a página de screenshots</a>.</p>
<p>Muito aconselhável, não consigo parar de usar.</p>
]]></content:encoded>
			<wfw:commentRss>http://bitcodes.hrangel.com.br/index.php/developer-apps-1-notepad/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Calendário Cross-Browser em JavaScript</title>
		<link>http://bitcodes.hrangel.com.br/index.php/calendario-cross-browser-em-javascript/</link>
		<comments>http://bitcodes.hrangel.com.br/index.php/calendario-cross-browser-em-javascript/#comments</comments>
		<pubDate>Wed, 17 Jan 2007 14:42:46 +0000</pubDate>
		<dc:creator>Rangel</dc:creator>
				<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://bitcodes.hrangel.com.br/index.php/calendario-cross-browser-em-javascript/</guid>
		<description><![CDATA[Post rápido sobre um link muito interessante que eu achei e já usei hoje: Uma excelente library com um calendário para campos text em que você quer preencher com data formatada, além de ser um calendário super bem feito ele também preenche campos select se for preciso. Eu testei ele em um dos meus projeto [...]]]></description>
			<content:encoded><![CDATA[<p>Post rápido sobre um link muito interessante que eu achei e já usei hoje:</p>
<p>Uma excelente library com <a target="_blank" title="Calendário" href="http://www.dhtmlgoodies.com/scripts/js_calendar/js_calendar.html">um calendário para campos text</a> em que você quer preencher com data formatada, além de ser um calendário super bem feito ele também preenche campos select se for preciso.</p>
<p>Eu testei ele em um dos meus projeto e é muito fácil de usar basta adicionar uma função passando qual o(s) campos de data e por último qual o item chamando a função (&#8220;this&#8221;).</p>
<p>Bem fácil, bonito e o mais importante, <strong>compatível</strong> com qualquer browser (leia Firefox e IE que foi onde eu testei).</p>
<p>Produzido por Alf Magne Kalleland (não achei sua página) e encontrado no <a target="_blank" title="Hot Scripts - JS Calendar" href="http://www.hotscripts.com/Detailed/53909.html">HotScripts</a>.</p>
<p>Espero que ajude.</p>
<p>Abraços</p>
]]></content:encoded>
			<wfw:commentRss>http://bitcodes.hrangel.com.br/index.php/calendario-cross-browser-em-javascript/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Substituto da Session</title>
		<link>http://bitcodes.hrangel.com.br/index.php/substituto-da-session/</link>
		<comments>http://bitcodes.hrangel.com.br/index.php/substituto-da-session/#comments</comments>
		<pubDate>Tue, 16 Jan 2007 15:26:36 +0000</pubDate>
		<dc:creator>Rangel</dc:creator>
				<category><![CDATA[c#]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[programação]]></category>

		<guid isPermaLink="false">http://bitcodes.hrangel.com.br/index.php/substituto-da-session/</guid>
		<description><![CDATA[Bom, ai vai uma dica rápida e que muita gente já deve conhecer, mas como eu já vi em muitos lugares esse tipo de erro então vou falar: O uso da session não pode ser indiscriminado, as variáveis guardadas na sessão ficam salvas no servidor, assim como as de contexto da aplicação, logo se você [...]]]></description>
			<content:encoded><![CDATA[<p>Bom, ai vai uma dica rápida e que muita gente já deve conhecer, mas como eu já vi em muitos lugares esse tipo de erro então vou falar:</p>
<p>O uso da session não pode ser indiscriminado, as variáveis guardadas na sessão ficam salvas no servidor, assim como as de contexto da aplicação, logo se você guardar muita coisa em ambos vai acabar com a memória do servidor.</p>
<p>Um jeito de diminuir bem o uso dela é ao invés de salvar variáveis na session que você quer utilizar entre páginas ou entre PostBacks (Reloads para quem mexe com java) é salvar o conteúdo de alguma maneira na página.</p>
<p>No C# você pode usar o ViewState para guardar essas variáveis desse jeito você poderá resgatar objetos mesmo após o PostBack (lembre-se que todas as variáveis devem ser Serializable), no Java você pode fazer a mesma coisa utilizando de hiddens no HTML (pelo menos é como eu faço), entretanto você continua não podendo mandar de uma página para outra, para isso você pode (tanto em Java como em C#) mandar um parâmetro via Get (na Query String da URL) ou via Post.</p>
<p>Em um dos próximos posts vou mostrar como enviar parâmetros para outra página via Post.</p>
<p>Abs</p>
]]></content:encoded>
			<wfw:commentRss>http://bitcodes.hrangel.com.br/index.php/substituto-da-session/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Scroll da página com JavaScript</title>
		<link>http://bitcodes.hrangel.com.br/index.php/scroll-da-pagina-com-javascript/</link>
		<comments>http://bitcodes.hrangel.com.br/index.php/scroll-da-pagina-com-javascript/#comments</comments>
		<pubDate>Fri, 12 Jan 2007 15:50:25 +0000</pubDate>
		<dc:creator>Rangel</dc:creator>
				<category><![CDATA[Outros]]></category>

		<guid isPermaLink="false">http://bitcodes.hrangel.com.br/index.php/scroll-da-pagina-com-javascript/</guid>
		<description><![CDATA[Bom, post rápido e simples, dica usada recentemente para fazer um scroll da página até um certo elemento, segue código da funcion criada para isso: function scrollPage(sID) { var objElement = document.getElementById(sID); if (objElement != null) { objElement.scrollIntoView(); } } Espero que possa ajudar! Abs]]></description>
			<content:encoded><![CDATA[<p>Bom, post rápido e simples, dica usada recentemente para fazer um scroll da página até um certo elemento, segue código da funcion criada para isso:</p>
<p><code> function scrollPage(sID)<br />
{<br />
var objElement = document.getElementById(sID);<br />
if (objElement != null)<br />
{<br />
objElement.scrollIntoView();<br />
}<br />
} </code></p>
<p>Espero que possa ajudar!  Abs</p>
]]></content:encoded>
			<wfw:commentRss>http://bitcodes.hrangel.com.br/index.php/scroll-da-pagina-com-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Tutorial: Eclipse + Processing</title>
		<link>http://bitcodes.hrangel.com.br/index.php/tutorial-eclipse-processing/</link>
		<comments>http://bitcodes.hrangel.com.br/index.php/tutorial-eclipse-processing/#comments</comments>
		<pubDate>Tue, 02 Jan 2007 22:03:31 +0000</pubDate>
		<dc:creator>Rangel</dc:creator>
				<category><![CDATA[java]]></category>
		<category><![CDATA[processing]]></category>
		<category><![CDATA[programação]]></category>
		<category><![CDATA[visual]]></category>

		<guid isPermaLink="false">http://bitcodes.hrangel.com.br/index.php/tutorial-eclipse-processing/</guid>
		<description><![CDATA[Bom, aqui vai um pequeno, rápido e indolor tutorial para aqueles que conheceram e gostaram do Processing e querem programa-lo usando o Eclipse. Eu achei essa forma nesse site gringo (por sinal lá tem uma explicação melhor, em ingles claro) faz um tempo, me ajudou muito pois o Eclipse é, na minha opnião, a melhor [...]]]></description>
			<content:encoded><![CDATA[<p>Bom, aqui vai um pequeno, rápido e indolor tutorial para aqueles que conheceram e gostaram do <a title="Processing" target="_blank" href="http://www.processing.org">Processing</a> e querem programa-lo usando o <a title="Eclipse" target="_blank" href="http://www.eclipse.org/">Eclipse</a>.  Eu achei essa forma <a href="http://proce55ing.net/discourse/yabb/YaBB.cgi?board=general;action=display;num=1072722668;">nesse site gringo</a> (por sinal lá tem uma explicação melhor, em ingles claro) faz um tempo, me ajudou muito pois o Eclipse é, na minha opnião, a melhor IDE para programar em Java.  Vamos lá:</p>
<p>1 &#8211; Baixe o Eclipse</p>
<p>2 &#8211; Baixe o Processing</p>
<p>3 &#8211; Criando um projeto Processing no Eclipse</p>
<ul>
<li>Abra o eclipse</li>
<li>Clique em File > New > Project</li>
<li>Selecione &#8220;Java Project&#8221;</li>
<li>Siga os passos para criar o projeto em si</li>
<li>Não esqueça de configurar a pasta de arquivos fonte (.java) em um local diferente da pasta de arquivos compilados (.class)</li>
<li>No novo projeto, crie dois arquivos na raiz: <a href="http://bitcodes.hrangel.com.br/wp-content/uploads/2007/01/build.properties">build.properties</a> e <a href="http://bitcodes.hrangel.com.br/wp-content/uploads/2007/01/build.xml">build.xml</a></li>
</ul>
<p>4 &#8211; Adicione o arquivo core.jar nas libraries do projeto<br />
Encontra-se dentro da sua pasta do processing na pasta lib)</p>
<p>5 &#8211; Configurando <a href="http://bitcodes.hrangel.com.br/wp-content/uploads/2007/01/build.properties">build.properties</a>:<br />
Nesse arquivo você faz algumas configuraçõs básicas, coloca o nome do Projeto e as dimensões do applet</p>
<p>6 &#8211; Configurando <a href="http://bitcodes.hrangel.com.br/wp-content/uploads/2007/01/build.xml">build.xml</a>:<br />
Aqui é o coração do builder de Jar, a única alteração que você deve fazer nesse arquivo é alterar o nome do Projeto e a descrição nas primeiras linhas e adicionar as Jars que você usa nas libraries do projeto, usando esse formato e a partir da linha 51 do arquivo. Segue um exemplo:<br />
<code>&lt;unjar dest="${build}" xsrc="${lib}/gs_applet.jar" mce_src="${lib}/gs_applet.jar" /&gt;</code></p>
<p>7 &#8211; Agora basta começar a programar uma classe derivada de <span style="font-style: italic">PApplet</span> (tem que importar o pacote <span style="font-style: italic">processing.core.*</span>) e na hora que você quiser criar o arquivo Jar basta clicar com o botão direito do Mouse sobre o build.xml e selecionar Run As > Ant Build</p>
<p>Pronto seu jar já está pronto para usar em qualquer página da Web</p>
<p>Algumas dicas: se você quiser adicionar arquivos no projeto basta criar uma pasta data dentro do projeto e adicionar os arquivos desejados, e só para lembrar classe do applet deve ter o mesmo nome do jar (não preciso falar que você precisa derivar os métodos básicos do processing para que tudo seja executado corretamente)<br />
Espero ter ajudado alguma alma perdida!</p>
<p>Abraços</p>
]]></content:encoded>
			<wfw:commentRss>http://bitcodes.hrangel.com.br/index.php/tutorial-eclipse-processing/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
