﻿<?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>Arena Webmaster</title>
	<atom:link href="http://www.arenawm.comoj.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.arenawm.comoj.com</link>
	<description>O melhor lugar para webmasters</description>
	<lastBuildDate>Thu, 04 Mar 2010 14:00:52 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>ICQ 7 entra na era das redes sociais e tempo real</title>
		<link>http://www.arenawm.comoj.com/2010/01/icq-7-entra-na-era-das-redes-sociais-e-tempo-real/</link>
		<comments>http://www.arenawm.comoj.com/2010/01/icq-7-entra-na-era-das-redes-sociais-e-tempo-real/#comments</comments>
		<pubDate>Mon, 18 Jan 2010 18:25:08 +0000</pubDate>
		<dc:creator>Mateus Gomes</dc:creator>
				<category><![CDATA[Notícias]]></category>
		<category><![CDATA[ICQ]]></category>
		<category><![CDATA[ICQ 7]]></category>

		<guid isPermaLink="false">http://www.arenawm.comoj.com/?p=243</guid>
		<description><![CDATA[A versão 7 do ICQ, que acaba de ser lançada pela AOL, aposta em integração com redes sociais.]]></description>
			<content:encoded><![CDATA[<h1>Com nova versão, ICQ entra na era das redes sociais e tempo real.</h1>
<p>O ICQ, que foi lançado em 1996 e era febre entre os internautas para comunicação instantânea, ganhou uma nova versão, que pretende competir no novo mundo de redes sociais e mensagens em tempo real.</p>
<p>Sua versão 7, cujo download pode ser feito no site do produto, possibilita integrar diferentes serviços de redes sociais, como Facebook, Twitter, YouTube e Flickr.</p>
<p><img class="size-full wp-image-250 alignleft" title="icq7-arenawebmaster-noticia2" src="http://www.arenawm.comoj.com/wp-content/uploads/2010/01/Sem-Título-3.jpg" alt="Com nova versão, ICQ entra na era das redes sociais e tempo real" width="147" height="329" style="margin-left:0;" />Novas abas, explica o site <a href="http://www.techcrunch.com/" target="_blank">TechCrunch</a>, permitem fluxos de dados dessas redes para o novo cliente messenger do ICQ &#8211;de maneira similar ao serviço <a href="http://ping.fm/" target="_blank">Ping.fm</a>.</p>
<p>A interface do ICQ ganhou novas cores e supostamente também toma menos espaço e funciona mais rápido. Outras funções disponíveis são relativas a compartilhamento de fotos e ao perfil de usuário.Por enquanto, o serviço está disponível somente para Windows.</p>
<p>No entanto, apesar da novidade e achar interessante a possibilidade de instalar o ICQ novamente após mais de uma década sem pensar nele, o TechCrunch acredita que os recursos estão atrasados e duvida que haja razões para as pessoas voltarem a utilizar o comunicador instantâneo.</p>
<p>De acordo com comunicado do ICQ, há atualmente 42 milhões de usuários do serviço atualmente &#8211;apesar de ser difícil conhecer pessoas que afirmem ser usuárias do serviço atualmente, ao menos no Brasil.</p>
<p>A AOL é proprietária do ICQ há quase 12 anos, desde que comprou a Mirabilis, antiga dona, por US$ 407 milhões.</p>
<div id="attachment_244" class="wp-caption aligncenter" style="width: 560px"><a href="http://www.arenawm.comoj.com/wp-content/uploads/2010/01/1001898.jpeg"><img class="size-full wp-image-244" style="margin-left:0;" title="icq7-arenawebmaster-divulgacao" src="http://www.arenawm.comoj.com/wp-content/uploads/2010/01/1001898.jpeg" alt="Com nova versão, ICQ entra na era das redes sociais e tempo real" width="550" height="662" /></a><p class="wp-caption-text">Com nova versão, ICQ entra na era das redes sociais e tempo real</p></div>
<p>Fonte: <a href="http://www1.folha.uol.com.br/folha/informatica/ult124u680921.shtml">[Folha Online]</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.arenawm.comoj.com/2010/01/icq-7-entra-na-era-das-redes-sociais-e-tempo-real/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ameaça de processo judicial indiretamente confirma existência do iTablet</title>
		<link>http://www.arenawm.comoj.com/2010/01/ameaca-de-processo-judicial-indiretamente-confirma-existencia-do-itablet/</link>
		<comments>http://www.arenawm.comoj.com/2010/01/ameaca-de-processo-judicial-indiretamente-confirma-existencia-do-itablet/#comments</comments>
		<pubDate>Sun, 17 Jan 2010 15:42:57 +0000</pubDate>
		<dc:creator>Mateus Gomes</dc:creator>
				<category><![CDATA[Notícias]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[iTablet]]></category>

		<guid isPermaLink="false">http://www.arenawm.comoj.com/?p=229</guid>
		<description><![CDATA[A Apple se mostrou bastante incomodada com a “caça ao tesouro” que o site Valleywag.com anunciou.]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.arenawm.comoj.com/wp-content/uploads/2010/01/custom_jobstablet_arenawm.jpg"><img class="alignright size-full wp-image-234" title="custom_jobstablet_arenawm" src="http://www.arenawm.comoj.com/wp-content/uploads/2010/01/custom_jobstablet_arenawm.jpg" alt="custom_jobstablet_arenawm" width="240" /></a>A Apple se mostrou bastante incomodada com a “<a href="http://gawker.com/5447390/" target="_blank">caça ao tesouro</a>” que o site <a href="http://valleywag.com/" target="_blank">Valleywag.com</a> anunciou, oferecendo prêmios em dinheiro por imagens, vídeos ou a oportunidade de brincar por uma hora com o iTablet, o gadget sobre o qual todos falam, menos a Apple. Ou melhor, não falava, porque, através de uma nota enviada à Gawker Media (proprietária do <a href="http://valleywag.com/" target="_blank">Valleywag.com</a>), ela praticamente confirmou — de maneira indireta — a existência do famoso tablet.</p>
<p>A empresa de Steve Jobs exigiu que a Gawker Media retirasse a oferta do site e, caso recebesse qualquer tipo de material confidencial, que informasse imediatamente a Apple e não o publicasse. Se a Gawker Media não cumprir essas exigências a Apple ameaça processá-la. Na comunicação enviada, percebe-se que a Apple fala muito sério, e ela deixa claro que está protegendo os seus “segredos comerciais”. A questão é, seria de se estranhar que uma empresa tomasse essa postura para proteger segredos de um produto que não existisse.</p>
<p><a href="http://www.arenawm.comoj.com/wp-content/uploads/2010/01/itablet-arenawebmaster2.jpg"><img class="alignleft size-full wp-image-238" style="margin-left:0; padding-left:;" title="iTablet - Arena Webmaster" src="http://www.arenawm.comoj.com/wp-content/uploads/2010/01/itablet-arenawebmaster2.jpg" alt="iTablet - Arena Webmaster" width="160" height="105" /></a>A própria notificação está cheia de indícios da existência do iTablet, mesmo que ele jamais tenha sido referido por esse ou qualquer outro nome — é referido apenas como “um produto não-anunciado e altamente confidencial”. Veja a seguir a reprodução do comunicado na íntegra:</p>
<p><img src="http://cache.gawker.com/assets/images/7/2010/01/500x_appleletter1_01.jpg" alt="" /></p>
<p><img src="http://cache.gawker.com/assets/images/7/2010/01/500x_appleletter2_01.jpg" alt="" /></p>
<p>Veja o post original: <a href="http://gawker.com/5448177/update-apple-wins-the-first-prize-in-our-tablet-scavenger-hunt">Valleywag</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.arenawm.comoj.com/2010/01/ameaca-de-processo-judicial-indiretamente-confirma-existencia-do-itablet/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ruby, o que é?</title>
		<link>http://www.arenawm.comoj.com/2009/10/ruby-o-que-e/</link>
		<comments>http://www.arenawm.comoj.com/2009/10/ruby-o-que-e/#comments</comments>
		<pubDate>Sat, 03 Oct 2009 21:15:56 +0000</pubDate>
		<dc:creator>Mateus Gomes</dc:creator>
				<category><![CDATA[Ruby]]></category>
		<category><![CDATA[introdução]]></category>
		<category><![CDATA[Ruby on Rails]]></category>

		<guid isPermaLink="false">http://www.arenawm.comoj.com/?p=209</guid>
		<description><![CDATA[Ruby é uma Linguagem de programação interpretada, com tipagem dinâmica e forte, orientada a objetos e, com várias semelhanças com Perl, Python e SmallTalk.]]></description>
			<content:encoded><![CDATA[<p>Ruby é uma Linguagem de programação interpretada, com tipagem dinâmica e forte, orientada a objetos e, com várias semelhanças com Perl, Python e SmallTalk.</p>
<p>Projetada tanto para a programação em grande escala quanto para codificação rápida, tem um suporte a orientação a objetos simples e prático. A linguagem foi criada pelo japonês Yukihiro Matsumoto, que aproveitou as melhores idéias das outras linguagens da época.</p>
<p>Esta linguagem possui vastos repositórios de bibliotecas disponíveis em sites como Ruby Forge e Ruby Application Archive (RAA). Existe, ainda, uma ferramenta bastante útil para instalação de bibliotecas, chamada Ruby Gems, o software mais famoso desenvolvido em Ruby é o Ruby on Rails.</p>
<p><strong style="font-size: 15px;">História</strong></p>
<p>Ruby se tornou reconhecida no meio especializado desde que Dave Thomas, conhecido como um dos &#8220;Programadores Pragmáticos&#8221;, adotou-o como uma de suas linguagens preferidas e acabou por escrever um dos mais completos livros sobre a linguagem, o Programming Ruby. Com o advento desta publicação, a linguagem passou a contar com uma boa fonte de iniciação e referência em inglês, aumentando consequentemente o número de adeptos da linguagem no Ocidente.</p>
<p>Ultimamente, devido a grande exposição de um framework web feito em Ruby, o Ruby on Rails desenvolvido por David Heinemeier Hansson, a linguagem tem sido foco da mídia especializada justamente pela sua praticidade.</p>
<p>Esta mesma praticidade inclusive é um dos conceitos básicos desta linguagem. É possível fazer algoritmos que resolvam seus problemas, não necessitando se preocupar com as limitações da linguagem ou do interpretador.</p>
<p><strong style="font-size: 15px;">Características</strong></p>
<p>Para manter a praticidade, a linguagem possui algumas características interessantes:</p>
<ul>
<li>A sintaxe é enxuta, quase não havendo necessidade de colchetes e outros caracteres.</li>
</ul>
<ul>
<li>Todas as variáveis são objetos, onde até os &#8220;tipos primitivos&#8221; (tais como inteiro, real, entre outros) são classes.</li>
</ul>
<ul>
<li>Estão disponíveis diversos métodos de geração de código em tempo real, como os &#8220;attribute accessors&#8221;.</li>
</ul>
<ul>
<li>Através do Ruby Gems, é possível instalar e atualizar bibliotecas com uma linha de comando, de maneira similar ao APT do Debian Linux.</li>
</ul>
<ul>
<li>Code blocks (blocos de código), ajudam o programador a passar um trecho de instruções para um método. A idéia é semelhante aos &#8220;callbacks&#8221; do Java, mas de uma forma extremamente simples e bem implementada.</li>
</ul>
<ul>
<li>Mixins, uma forma de emular a herança múltipla, sem cair nos seus problemas.</li>
</ul>
<ul>
<li>Tipagem dinâmica, mas forte. Isso significa que todas as variáveis devem ter um tipo (fazer parte de uma classe), mas a classe pode ser alterada dinamicamente. Os &#8220;atalhos&#8221; citados acima, por exemplo, se beneficiam da tipagem dinâmica para criar os métodos de acesso/alteração das propriedades.</li>
</ul>
<p>Ruby está disponível para diversas plataformas, como Microsoft Windows, .NET, Linux, Solaris e Mac OS X, além de também ser executável em cima da máquina virtual do Java (através do JRuby).</p>
<p><strong style="font-size: 15px;">Orientação a objetos</strong></p>
<p>Muitos programadores consideram o Ruby uma linguagem de programação totalmente orientada a objetos (de maneira similar ao SmallTalk), porém devido a inexistência de conceitos padrões para especificação de linguagens OO, isto não pode ser provado.</p>
<p>Ruby não possui tipos primitivos, mas sim todos tipos são classes, assim como todas variáveis são objetos. Como exemplo, conjunto de caracteres é uma instância da classe String, inteiro é da Fixnum e matriz é Array.</p>
<p>Um conceito interessante também é que a maioria dos operadores binários e unários são, na realidade, métodos. Ou seja, podem ser alterados da mesma forma que os operadores em C++. Exemplo:</p>
<p><code style="color: #000033;"><br />
&nbsp;class MeuNumero &lt; Fixnum<br />
&nbsp;&nbsp;&nbsp;def +(numero)<br />
&nbsp;&nbsp;&nbsp;&nbsp;42<br />
&nbsp;&nbsp;&nbsp;end<br />
&nbsp;end</p>
<p>numero = MeuNumero.new(1)<br />
# Repare como um operador de soma é um método em ruby, ao contrário de outras linguagens puts numero + 2 # 1+2 = 42 ??? Sim, sobrescrevemos o método de soma para retornar 42 sempre.</code></p>
<p><strong style="font-size: 15px;">Quem está por trás do Ruby?</strong></p>
<p>Ainda hoje, Matz é o responsável por todas as decisões não-consensuais do Ruby. Ou seja, qualquer divergência quanto à implementação de uma nova funcionalidade é resolvida pelo &#8220;ditador benevolente&#8221;. Apesar desta &#8220;dependência&#8221;, a comunidade é forte a ponto de sobreviver &#8220;caso o Matz seja atropelado por um ônibus espacial&#8221;. Existem pessoas que estão tão inteiradas com o código quanto o próprio Matz. Diferentemente de outras tecnologias opensource, não existe uma empresa por trás de suas operações, bancando os custos. O projeto sobrevive de doações feitas pelos usuários satisfeitos e por empresas que conseguiram aumentar sua produtividade utilizando Ruby.</p>
<p><strong style="font-size: 15px;">Links externos</strong></p>
<ul>
<li><a rel="nofollow" href="http://www.ruby-lang.org/" target="_blank">Página oficial do Ruby</a></li>
</ul>
<ul>
<li><a rel="nofollow" href="http://www.ruby-br.org/" target="_blank">Ruby Brasil</a></li>
</ul>
<p>Fonte: <a rel="nofollow" href="http://pt.wikipedia.org/" target="_blank">Wikipédia</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.arenawm.comoj.com/2009/10/ruby-o-que-e/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Google libera nova versão do Android para testes</title>
		<link>http://www.arenawm.comoj.com/2009/09/google-libera-nova-versao-do-android-para-testes/</link>
		<comments>http://www.arenawm.comoj.com/2009/09/google-libera-nova-versao-do-android-para-testes/#comments</comments>
		<pubDate>Wed, 23 Sep 2009 22:45:23 +0000</pubDate>
		<dc:creator>Mateus Gomes</dc:creator>
				<category><![CDATA[Notícias]]></category>
		<category><![CDATA[Android]]></category>
		<category><![CDATA[Google]]></category>

		<guid isPermaLink="false">http://www.arenawm.comoj.com/?p=204</guid>
		<description><![CDATA[O Google liberou nesta terça-feira (15/09) a versão 1.6 do Android para desenvolvedores.]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.arenawm.comoj.com/wp-content/uploads/2009/09/android.jpg"><img class="alignright size-full wp-image-203" title="google-android-news" src="http://www.arenawm.comoj.com/wp-content/uploads/2009/09/android.jpg" alt="google-android-news" width="286" height="163" /></a>O Google liberou nesta terça-feira (15/09) à noite para desenvolvedores a versão 1.6 do Android, sistema operacional para celulares. Com codinome &#8220;Donut&#8221;, o novo software trará mais recursos aos smartphones e seus programas.</p>
<p>O &#8220;Donut&#8221; traz, entre outras novidades, suporte a redes celulares com tecnologia CDMA (ainda usada nos Estados Unidos), melhorias na interface de captura de imagem do celular, permitindo tirar fotos mais rápido e apagar múltiplos arquivos na galeria simultaneamente, uma nova caixa de buscas em todo o sistema e mudanças no acesso a redes privadas corporativas (VPN).</p>
<p>Além disso, o Android 1.6 virá com uma nova tela de uso de bateria, com informações de qual aplicativos e serviços estão consumindo mais energia. Nessa área, será possível modificar as configurações, parar o aplicativo e até removê-lo do sistema, de acordo com o Google. Os desenvolvedores também podem adaptar, com o &#8220;Donut&#8221;, seus aplicativos para tamanhos distintos da tela do celular.</p>
<p>O Android Market, loja de aplicativos para smartphones com Android, também passou por mudanças, prometendo mais facilidade de uso para os consumidores na hora de encontrar programas. Aplicativos criados para o Android 1.5 vão funcionar na versão 1.6, esclarece a empresa.</p>
<p>Segundo o Google, aparelhos com Android 1.6 &#8220;Donut&#8221; já devem chegar ao mercado em outubro. Os criadores de aplicativos para a plataforma podem baixar o kit de desenvolvimento (SDK) em <a title="Google Androind Developer Site" href="http://developer.android.com" target="_blank">http://developer.android.com.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.arenawm.comoj.com/2009/09/google-libera-nova-versao-do-android-para-testes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Yahoo! GeoCities vai fechar em 26 de outubro</title>
		<link>http://www.arenawm.comoj.com/2009/07/yahoo-geocities-vai-fechar-em-outubro/</link>
		<comments>http://www.arenawm.comoj.com/2009/07/yahoo-geocities-vai-fechar-em-outubro/#comments</comments>
		<pubDate>Thu, 16 Jul 2009 15:58:21 +0000</pubDate>
		<dc:creator>Mateus Gomes</dc:creator>
				<category><![CDATA[Notícias]]></category>
		<category><![CDATA[GeoCities]]></category>
		<category><![CDATA[Yahoo!]]></category>

		<guid isPermaLink="false">http://www.arenawm.comoj.com/?p=196</guid>
		<description><![CDATA[A grande empresa Yahoo! divulga por e-mail que fechará o GeoCities em 26 de outubro.]]></description>
			<content:encoded><![CDATA[<p>Por e-mail o Yahoo! divulga que fechará o GeoCities, confira:</p>
<p>Estamos escrevendo para comunicar que o Yahoo! GeoCities, nossa comunidade e serviços para construção de sites gratuitos, será fechado em 26 de outubro de 2009.</p>
<p>Tivemos muito prazer em hospedar os sites criados pelos usuários do Yahoo! no mundo inteiro e ficamos orgulhosos com as comunidades criadas. Entretanto, decidimos nos concentrar em ajudar nossos clientes a explorar e construir relacionamentos online de outras maneiras.</p>
<p>Em 26 de outubro de 2009, seu site do GeoCities não será mais exibido na web e não será mais possível acessar sua conta ou arquivos do GeoCities.</p>
<p>O que você precisa fazer<br />
Se não estiver mais utilizando o site, não precisará fazer nada, mas se quiser mover o site ou salvar as imagens e outros arquivos publicados, será preciso agir agora, fazendo download dos arquivos para o seu próprio computador.</p>
<p>Para fazer download rapidamente dos seus arquivos e imagens publicados, visite nosso site do GeoCities, clique com o botão direito do mouse em cada página e escolha Salvar página como&#8230; no menu que aparece. Escolha um local no computador para salvar os arquivos e clique em OK ou Salvar para salvar o HTML e imagens associadas à sua página. <a href="http://help.yahoo.com/l/br/yahoo/geo/close/close-02.html" target="_balnk">Saiba mais sobre como fazer download dos arquivos.<br />
</a><br />
Com suas páginas e imagens salvas offline, você pode recriar seu site com qualquer outro provedor hospedeiro que desejar.</p>
<p>Fique atento porque, em 26 de outubro de 2009, seus arquivos do GeoCities serão excluídos de nossos servidores e não poderão mais ser recuperados. Se quiser salvar seus arquivos, você deve fazer download deles agora!</p>
<p>Outra maneira de se conectar<br />
Como cliente Yahoo!, agora você pode usar seu perfil Yahoo! como ponto central para gerenciar sua identidade e interesses do Yahoo! e facilmente se conectar e compartilhar com as pessoas que realmente importam para você.</p>
<p>Você pode começar a qualquer momento adicionando imagens e outros detalhes pessoais. Em seguida, convide amigos e parentes para serem conectados. Você poderá acompanhar atividades online de sua conexão do Yahoo!.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.arenawm.comoj.com/2009/07/yahoo-geocities-vai-fechar-em-outubro/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>(Servidor Java) Instalação e Configuração do Tomcat</title>
		<link>http://www.arenawm.comoj.com/2009/07/instalacao-do-tomcat/</link>
		<comments>http://www.arenawm.comoj.com/2009/07/instalacao-do-tomcat/#comments</comments>
		<pubDate>Thu, 16 Jul 2009 15:33:15 +0000</pubDate>
		<dc:creator>Mateus Gomes</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Servidor]]></category>
		<category><![CDATA[Tomcat]]></category>

		<guid isPermaLink="false">http://www.arenawm.comoj.com/?p=168</guid>
		<description><![CDATA[O Tomcat é um Conteiner Servlet (Servidor de Aplicações Java), que serve para interpretar aplicações escritas em Java para Web. ]]></description>
			<content:encoded><![CDATA[<p>Olá pessoal, hoje iremos falar sobre como instalar e configurar o <strong>Servlet Conteiner Tomcat</strong> em <strong>Ambiente Windows</strong>.</p>
<p>O <strong>Tomcat</strong> é um <strong>Conteiner Servlet (Servidor de Aplicações Java)</strong>, que serve para interpretar aplicações escritas em Java para Web, até o momento o Tomcat é apenas um <strong>Conteiner Servlet</strong> ele não implementa um <strong>Conteiner EJB (Enterprise Java Beans)</strong>.</p>
<p><strong>Pré-Requisitos:</strong></p>
<p>Se você apenas for rodar aplicações no <strong>Tomcat</strong>, basta ter o JRE (Java Runtime Environment) instalado em seu computador. Caso você for desenvolver aplicações é necessário estar instalado o <a href="http://www.oficinadanet.com.br/artigo/891/ambiente_de_desenvolvimento_java_-_jdk" target="_balnk">Ambiente de Desenvolvimento Java – JDK.</a></p>
<p><strong>Download do Tomcat:</strong></p>
<p><strong>1</strong> &#8211; Para efetuar o download vamos até o site oficial de downloads do Servlet Conteiner Tomcat, através do link abaixo:<br />
<a href="http://tomcat.apache.org/download-60.cgi" target="_blank">http://tomcat.apache.org/download-60.cgi</a></p>
<p><strong>2</strong> &#8211; No item <strong>Binary Distributions</strong> clique em <strong>Windows Service Installer</strong>.</p>
<p><strong>Observação:</strong> Atualmente o <strong>Tomcat</strong> encontra-se na versão 6.0.16, antes de baixar verifique o seu sistema operacional, nesse tutorial estaremos utilizando no sistema operacional Windows XP.</p>
<p><strong>Instalação do Tomcat:</strong></p>
<p><strong>1</strong> &#8211; Na primeira tela temos informações sobre o <strong>Tomcat</strong>, clique em <strong>Next</strong>:<br />
<img class="aligncenter size-full wp-image-169" title="Instalando o Tomcat" src="http://www.arenawm.comoj.com/wp-content/uploads/2009/07/gd_imagem_1.jpg" alt="tomcat_materia_1_intalando_imagem_1" width="500" height="368" /></p>
<p><strong>2</strong> &#8211; Na próxima tela temos o contrato de utilização do Software, clique em <strong>I Agree</strong>:<br />
<img src="http://www.arenawm.comoj.com/wp-content/uploads/2009/07/gd_imagem_2.jpg" alt="gd_imagem_2" title="gd_imagem_2" width="500" height="365" class="aligncenter size-full wp-image-172" /></p>
<p><strong>3</strong> &#8211; Na próxima tela temos as configurações de componentes do <strong>Tomcat</strong> ou seja , aqui definimos o tipo de instalação, no nosso tutorial utilizaremos a instalação <strong>Custom</strong> que contém a <strong>Documentação</strong> e alguns exemplos de <strong>JSP/Servlets</strong>:<br />
<img src="http://www.arenawm.comoj.com/wp-content/uploads/2009/07/gd_imagem_3.jpg" alt="gd_imagem_3" title="gd_imagem_3" width="500" height="366" class="aligncenter size-full wp-image-175" /></p>
<p><strong>4</strong> &#8211; Na próxima tela temos o diretório onde o <strong>Tomcat</strong> vai ser instalado, em nossa instalação vamos adicionar o seguinte caminho: <strong>C:Arquivos de programasTomcat 6.0</strong>, após isso clique em <strong>Next</strong>:<br />
<img src="http://www.arenawm.comoj.com/wp-content/uploads/2009/07/gd_imagem_4.jpg" alt="gd_imagem_4" title="gd_imagem_4" width="500" height="367" class="aligncenter size-full wp-image-177" /></p>
<p><strong>5</strong> &#8211; Na tela abaixo temos as configurações básicas do <strong>Tomcat</strong> que são:</p>
<p><strong>Porta de instalação:</strong> Essa porta de acesso deve ser exclusiva ao <strong>Tomcat</strong>, por padrão a porta de instalação do <strong>Tomcat é a 8080</strong>.<br />
<strong>User Name:</strong> Define um nome de usuário para acesso a administração do <strong>Tomcat</strong>, por padrão ele define como <strong>admin</strong>.<br />
<strong>Password:</strong> Define uma senha para o administrador do <strong>Tomcat</strong>, são recomendados por questões de segurança em rede que esta senha tenha mínimo 6 caracteres e contenha letras e números.</p>
<p>Após definir essas configurações clique em <strong>Next</strong>:<br />
<img src="http://www.arenawm.comoj.com/wp-content/uploads/2009/07/gd_imagem_5.jpg" alt="gd_imagem_5" title="gd_imagem_5" width="500" height="365" class="aligncenter size-full wp-image-179" /></p>
<p><strong>6</strong> &#8211; Na tela abaixo indica onde esta instalada a <strong>JRE (Java Runtime Environment)</strong>, após isso clique em <strong>Install</strong>:<br />
<img src="http://www.arenawm.comoj.com/wp-content/uploads/2009/07/gd_imagem_6.jpg" alt="gd_imagem_6" title="gd_imagem_6" width="500" height="364" class="aligncenter size-full wp-image-180" /></p>
<p><strong>7</strong> &#8211; Após a instalação aparecerá à tela abaixo onde indica que o <strong>Tomcat</strong> foi instalado com sucesso, ela apresenta dois checkbox selecionados:</p>
<p><strong>Run Apache Tomcat</strong>: Indica que após clicar em <strong>Finish</strong> o serviço do <strong>Tomcat</strong> será iniciado.<br />
<strong>Show Readme</strong>: Mostra uma documentação contendo informações sobre o <strong>Apache Tomcat</strong>.</p>
<p>Para concluir a instalação clique em <strong>Finish</strong>:<br />
<img src="http://www.arenawm.comoj.com/wp-content/uploads/2009/07/gd_imagem_7.jpg" alt="gd_imagem_7" title="gd_imagem_7" width="500" height="367" class="aligncenter size-full wp-image-182" /></p>
<p><strong>8</strong> &#8211; Após clicar em <strong>Finish</strong> na barra de status de seu sistema operacional aparecerá um novo ícone, esse ícone é o <strong>status do Tomcat</strong> que representa:<br />
<img src="http://www.arenawm.comoj.com/wp-content/uploads/2009/07/imagem_8.jpg" alt="imagem_8" title="imagem_8" width="300" height="100" class="aligncenter size-full wp-image-183" /></p>
<p>Clicando sobre esse ícone aparecerá à seguinte tela onde você terá varias configurações que podem ser realizadas no <strong>Tomcat</strong>, mas uma das principais fica na <strong>Aba General</strong>, onde você pode configurar o serviço como: <strong>Manual, Automático ou Desabilitado</strong>:<br />
<img src="http://www.arenawm.comoj.com/wp-content/uploads/2009/07/imagem_9.jpg" alt="imagem_9" title="imagem_9" width="411" height="396" class="aligncenter size-full wp-image-185" /></p>
<p><strong>Configuração do Tomcat:</strong></p>
<p>A Configuração do Tomcat é uma parte muito importante para o correto funcionamento do seu ambiente, essa configuração consiste na criação de uma variável de ambiente chamada <strong>CATALINA_HOME</strong>.</p>
<p><strong>1</strong> &#8211; Para acessar as variáveis de ambiente clique com o botão direito do mouse no ícone <strong>Meu Computador</strong>, clique na <strong>Aba Avançado</strong>, e clique no botão <strong>Variáveis de Ambiente</strong>, ou se preferir vá até o <strong>Painel de Controle</strong>, clique em <strong>Sistema</strong>, e clique no botão <strong>Variáveis de Ambiente</strong>:<br />
<img src="http://www.arenawm.comoj.com/wp-content/uploads/2009/07/imagem_10.jpg" alt="imagem_10" title="imagem_10" width="417" height="508" class="aligncenter size-full wp-image-187" /></p>
<p>Existem dois tipos de <strong>Variáveis de Ambiente</strong>:</p>
<p><strong>Variáveis de Usuário</strong>: que servem para um usuário especifico;<br />
<strong>Variáveis do Sistema</strong>: que servem para todos os usuários do computador, no nosso caso vamos criar e configurar nossa variável de ambiente como <strong>Variáveis do Sistema</strong>:<br />
<img src="http://www.arenawm.comoj.com/wp-content/uploads/2009/07/imagem_11.jpg" alt="imagem_11" title="imagem_11" width="385" height="427" class="aligncenter size-full wp-image-188" /></p>
<p><strong>2</strong> &#8211; Como dito anteriormente agora iremos criar a variável de ambiente <strong>CATALINA_HOME</strong>:</p>
<p><strong>Nome da Variável</strong>: CATALINA_HOME;<br />
<strong>Valor da Variável</strong>: Caminho onde o <strong>Tomcat</strong> foi instalado, no nosso exemplo o caminho é “<strong>C:\Arquivos de programas\Tomcat 6.0</strong>”;<br />
<img src="http://www.arenawm.comoj.com/wp-content/uploads/2009/07/imagem_12.jpg" alt="imagem_12" title="imagem_12" width="383" height="426" class="aligncenter size-full wp-image-189" /></p>
<p><strong>3</strong> &#8211; Após criar a variável de ambiente reinicie o serviço do <strong>Tomcat</strong> para que a alteração de configuração entre em vigor no seu ambiente.<br />
<strong>Observação</strong>: Existem também outras <strong>Variáveis de Ambiente</strong> que podem ser criadas para algumas particularidades do Tomcat, mas para o seu funcionamento basta criar a variável <strong>CATALINA_HOME</strong>.</p>
<p><strong>Testando a Instalação</strong>:</p>
<p>Para testar a instalação do <strong>Tomcat</strong> vamos acessar ele através do endereço <strong>http://localhost:8080</strong>, como a tela abaixo:<br />
<img src="http://www.arenawm.comoj.com/wp-content/uploads/2009/07/gd_imagem_13.jpg" alt="gd_imagem_13" title="gd_imagem_13" width="500" height="333" class="aligncenter size-full wp-image-190" /></p>
<p><strong>Observação</strong>: O endereço <strong>http://localhost:8080</strong> pode variar de acordo com a instalação realizada, caso você tenha alterado a porta de acesso no processo de instalação, não esqueça de adicionar a porta correta, <strong>Exemplo</strong>: Caso você tenha colocado a porta como <strong>8181</strong> o endereço para acesso seria <strong>http://localhost:8181</strong>.</p>
<p>Créditos: <a href="http://www.oficinadanet.com.br/artigo/992/instalacao_e_configuracao_do_tomcat" title="" target="_blank">http://www.oficinadanet.com.br/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.arenawm.comoj.com/2009/07/instalacao-do-tomcat/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Apple libera Safari 4 em versão beta pública</title>
		<link>http://www.arenawm.comoj.com/2009/03/apple-libera-safari-4/</link>
		<comments>http://www.arenawm.comoj.com/2009/03/apple-libera-safari-4/#comments</comments>
		<pubDate>Sun, 01 Mar 2009 17:02:13 +0000</pubDate>
		<dc:creator>Mateus Gomes</dc:creator>
				<category><![CDATA[Notícias]]></category>
		<category><![CDATA[Safari 4]]></category>

		<guid isPermaLink="false">http://www.arenawm.comoj.com/?p=154</guid>
		<description><![CDATA[Após oito meses de desenvolvimento em um preview fechado, a empresa liberou a versão beta pública do Safari 4, com 150 recursos à disposição dos usuários e novas tecnologias.]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-155" title="1-safari-250x250" src="http://www.arenawm.comoj.com/wp-content/uploads/2009/03/1-safari-250x250.png" alt="1-safari-250x250" width="250" height="250" />Finalmente, a resposta da Apple para o Firefox 3.1 e para o Google Chrome chegou. Após oito meses de desenvolvimento em um <a href="http://macmagazine.com.br/blog/2008/08/24/novo-beta-do-safari-4-ja-esta-nas-maos-de-desenvolvedores/"><em>preview</em> fechado</a>, a empresa <a href="http://www.apple.com/pr/library/2009/02/24safari.html">liberou hoje</a> a versão beta pública do Safari 4, com 150 recursos à disposição dos usuários e novas tecnologias que fazem dele o navegador mais rápido disponível no mercado.</p>
<p>Internamente, o navegador foi muito além do que era esperado nos primeiros Developer Previews. O novo Nitro Engine para execução de JavsScript o torna <a href="http://www.apple.com/safari/includes/performance.html#overlay-performance">4,2 vezes mais rápido</a> que a atual versão 3.2.2. Em comparação ao Internet Explorer, ele é 30 vezes mais eficiente para essa tarefa. Além disso, traz suporte ao HTML 5 para aplicativos web armazenarem informações localmente sem a necessidade de conexão com a internet, além de <a href="http://macmagazine.com.br/blog/2008/04/30/webkit-ganha-suporte-para-reflexos-via-css/">CSS3</a> <a href="http://macmagazine.com.br/blog/2008/04/29/webkit-passa-a-suportar-tambem-mascaras-via-css/">para efeitos</a> <a href="http://macmagazine.com.br/blog/2008/04/15/webkit-introduz-gradientes-via-css/">avançados</a> e <a href="http://macmagazine.com.br/blog/2009/02/06/webkit-agora-traz-suporte-a-animacoes-em-css/">animações</a> sem a necessidade de plugins. Graças a isso, ele é o primeiro navegador não-experimental a passar no <a href="http://acid3.acidtests.org/">Acid3 Test</a>, sem nenhuma imperfeição ou demora nos 100 testes.</p>
<p><a rel="shadowbox[post-38023];player=img;" href="http://macmagazine.com.br/blog/wp-content/uploads/2009/02/24-safari4.png"><img class="aligncenter size-medium wp-image-38046" title="Safari 4" src="http://macmagazine.com.br/blog/wp-content/uploads/2009/02/24-safari4-550x232.png" alt="Safari 4" width="550" height="232" /></a></p>
<p>O Safari 4 também traz algumas inovações visuais lançadas no Mac OS X ao longo dos anos. Você pode usar o modo de visualização Cover Flow para conferir pré-visualizações das páginas armazenadas nos seus favoritos e histórico, baseado no estado deles desde a sua última visita. Além disso, o novo “Top Sites” oferece um <em>preview</em> visual de até 24 dos sites mais visitados por você, isso numa única página, na ordem que quiser. Ele monitora as atualizações desses sites, então se você ficar muito sem acessar uma página e ela for atualizada, o Safari deixa um “aviso” na miniatura atual dela. Com um clique, a nova página é carregada e a miniatura é atualizada.</p>
<p><a rel="shadowbox[post-38023];player=img;" href="http://macmagazine.com.br/blog/wp-content/uploads/2009/02/24-safari4-topsites.png"><img class="aligncenter size-medium wp-image-38042" title="Safari 4" src="http://macmagazine.com.br/blog/wp-content/uploads/2009/02/24-safari4-topsites-550x386.png" alt="Safari 4" width="550" height="386" /></a></p>
<p>As miniaturas armazenadas pelo Safari 4 não são imagens geradas automaticamente, mas sim uma snapshot da própria página. Se você fizer buscas pelo histórico, ele também se baseará no que está armazenado nas páginas em si, exibindo o maior número possível de possibilidades.</p>
<p><a rel="shadowbox[post-38023];player=img;" href="http://macmagazine.com.br/blog/wp-content/uploads/2009/02/24-safari4-history.png"><img class="aligncenter size-medium wp-image-38041" title="Safari 4" src="http://macmagazine.com.br/blog/wp-content/uploads/2009/02/24-safari4-history-550x386.png" alt="Safari 4" width="550" height="386" /></a></p>
<p>No visual, quem vai sofrer são os usuários de Windows — ou não, a depender do seu ponto de vista. O <em>look &amp; feel</em> do navegador, assim como no Firefox 3, muda nos sistemas operacionais. Assim, ele se adapta visualmente ao Windows XP e ao Vista, incluindo o estilo da tipografia. Felizmente, isso pode ser revertido nas preferências, mas, para quem acha melhor continuar habituado ao estilo padrão do Windows, é uma boa. Além disso, a barra de abas agora é a própria barra de títulos, o que ajuda a dar maior espaço útil para a visualização dos sites.</p>
<p><a rel="shadowbox[post-38023];player=img;" href="http://macmagazine.com.br/blog/wp-content/uploads/2009/02/24-safari4-xp.png"><img class="aligncenter size-medium wp-image-38045" title="Safari 4" src="http://macmagazine.com.br/blog/wp-content/uploads/2009/02/24-safari4-xp-550x368.png" alt="Safari 4" width="550" height="368" /></a></p>
<p><a rel="shadowbox[post-38023];player=img;" href="http://macmagazine.com.br/blog/wp-content/uploads/2009/02/24-safari4-vista.png"><img class="aligncenter size-medium wp-image-38044" title="Safari 4" src="http://macmagazine.com.br/blog/wp-content/uploads/2009/02/24-safari4-vista-550x368.png" alt="Safari 4" width="550" height="368" /></a></p>
<p>Em um trabalho conjunto com a equipe do WebKit, muitas ferramentas estão disponíveis no novo Web Inspector para desenvolvedores de sites. A Apple diz ser o maior conjunto de recursos para esses profissionais em um navegador. Assim que forem ativadas nas preferências, elas permitem analisar todo o código e a estrutura das páginas, bem como fazer <em>debug</em> de JavaScript, visualizar bancos de dados offline e conferir detalhadamente a compatibilidade e a performance de um site.</p>
<p><a rel="shadowbox[post-38023];player=img;" href="http://macmagazine.com.br/blog/wp-content/uploads/2009/02/24-safari4-developers.png"><img class="aligncenter size-medium wp-image-38039" title="Safari 4" src="http://macmagazine.com.br/blog/wp-content/uploads/2009/02/24-safari4-developers-550x386.png" alt="Safari 4" width="550" height="386" /></a></p>
<p><a rel="shadowbox[post-38023];player=img;" href="http://macmagazine.com.br/blog/wp-content/uploads/2009/02/24-safari4-developers-code.png"><img class="aligncenter size-medium wp-image-38040" title="Safari 4" src="http://macmagazine.com.br/blog/wp-content/uploads/2009/02/24-safari4-developers-code-550x386.png" alt="Safari 4" width="550" height="386" /></a></p>
<p>O Safari 4 está disponível para Mac e Windows no <a href="http://www.apple.com/safari/">site da Apple</a>. Serão necessários pelo menos 256MB de memória para rodá-lo, além de uma placa de vídeo com pelo menos 16MB <a href="http://support.apple.com/kb/HT3410">para o Cover Flow e o Top Sites</a>. Os usuários de Mac também deverão ter o <a href="http://macmagazine.com.br/blog/2009/02/12/apple-libera-atualizacoes-de-java-e-seguranca-para-mac-os-x-tiger-e-leopard/">Security Update 2009-001</a> instalado com o Mac OS X Tiger 10.4.11 ou o Leopard 10.5.6.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.arenawm.comoj.com/2009/03/apple-libera-safari-4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mozilla adia lançamento do Firefox 3.1 mais uma vez</title>
		<link>http://www.arenawm.comoj.com/2009/02/lancamento-do-firefox-31/</link>
		<comments>http://www.arenawm.comoj.com/2009/02/lancamento-do-firefox-31/#comments</comments>
		<pubDate>Sat, 28 Feb 2009 17:14:29 +0000</pubDate>
		<dc:creator>Mateus Gomes</dc:creator>
				<category><![CDATA[Notícias]]></category>
		<category><![CDATA[Firefox 3.1]]></category>

		<guid isPermaLink="false">http://www.arenawm.comoj.com/?p=160</guid>
		<description><![CDATA[A Fundação Mozilla acaba de anunciar que adiará novamente o lançamento da versão 3.1 do Firefox.]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-full wp-image-161" title="15-firefox-240x240" src="http://www.arenawm.comoj.com/wp-content/uploads/2009/03/15-firefox-240x240.png" alt="15-firefox-240x240" width="240" height="240" />Parece que a concorrência tem feito o seu trabalho direitinho e está dando a maior dor de cabeça para os engenheiros na Fundação Mozilla. Ela acaba de anunciar que adiará novamente o lançamento da versão 3.1 do Firefox.</p>
<p>Sucessivos adiamentos já acontecem desde outubro, mas este último tem como motivo maior problemas enfrentados em relação ao motor JavaScript TraceMonkey. O lançamento do Beta 3 está planejado para a próxima semana, sendo que o Beta 4 deve chegar sete semanas depois.</p>
<p>Enquanto isso, os rivais não ficam parados. A  Apple <a href="http://www.arenawm.comoj.com/2009/03/01/apple-libera-safari-4/">lançou o primeiro beta público do Safari 4</a>, a Microsoft agendou o lançamento do Internet Explorer para o próximo mês, o Google Chrome vai rapidamente se preparando para adotar, em maio, <a href="http://www.techspot.com/news/33490-chrome-to-get-firefoxlike-extensions-by-may.html">suporte a extensões — assim como o Firefox –</a> e o Opera trabalha num novo motor JavaScript para incrementar a sua performance.</p>
<p>Será que a raposinha resistirá ao fogo que provocou no mercado ou sairá chamuscada nessa competição?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.arenawm.comoj.com/2009/02/lancamento-do-firefox-31/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zend Framework para um PHP mais poderoso</title>
		<link>http://www.arenawm.comoj.com/2009/02/zend-framework-o-que-e/</link>
		<comments>http://www.arenawm.comoj.com/2009/02/zend-framework-o-que-e/#comments</comments>
		<pubDate>Fri, 20 Feb 2009 19:17:10 +0000</pubDate>
		<dc:creator>Mateus Gomes</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Zend Framework]]></category>

		<guid isPermaLink="false">http://www.arenawm.comoj.com/?p=141</guid>
		<description><![CDATA[Esse tutorial tem como objetivo mostrar para as pessoas que nunca viram nada sobre o ZF(Zend Framework) e estão querendo saber como ele funciona.]]></description>
			<content:encoded><![CDATA[<p><strong>Esse tutorial tem como objetivo mostrar para as pessoas que nunca viram nada sobre o ZF(<a href="http://zend.framework.com/">Zend Framework</a>) e estão querendo saber como ele funciona.</strong></p>
<p>Quem já ouviu falar do <a href="http://zend.framework.com/">Zend Framework</a>? Resumidamente a <a title="Zend the PHP company" href="http://www.zend.com/">Zend</a> é uma empresa responsável pela manutenção e desenvolvimento do PHP.<br />
A engine de <a title="Entendendo o PHP5" href="http://felipetonello.com/blog/2006/05/15/php-entendendo-o-php5/">orientação a objetos do php5</a> foi totalmente reescrita pelo pessoal da Zend.</p>
<blockquote><p>Mas o que seria um framework?</p></blockquote>
<p>O framework é um conjunto de classes com objetivo de reutilização de um design, provendo um guia para uma solução de arquitetura em um domínio específico de software. (Wikipedia)<br />
Pode-se dizer que ele seria um conjunto de bibliotecas específicas.</p>
<p>Falando nossa lingua, o framework é um conjuntão de bibliotecas que ajuda em nosso trabalho do dia a dia, e nos trabalhos mais complicados também.</p>
<p>Esse artigo utiliza a versão <span style="text-decoration: line-through;">0.8 do framework. (dia 28/02/07)</span><br />
<em>[atualizado]</em><br />
Versão atual: 1.0.2 (01/09/07)<br />
<em>[/atualizado]</em></p>
<blockquote><p>Entendendo o Zend Framework</p></blockquote>
<p>O Zend Framework segue o padrão MVC &#8211; Model View Controller. É um padrão de arquitetura onde separa o <acronym title="Graphical User Interface">GUI</acronym>, templates, etc(View) da lógica(Model) e do controle(Controller).<br />
Então nele você pode usar a mesma lógica e/ou controle em diversas interfaçes com o usuário.</p>
<blockquote><p>Usando o Zend Framework</p></blockquote>
<ul>
<li>Faça download dele no site oficial: <a href="http://framework.zend.com/download">http://framework.zend.com/download</a></li>
<li>Descompacte o arquivo em qualquer pasta. Exemplo: tar zxvf ZendFramework-1.0.2.tar.gz -C ~/</li>
</ul>
<p>Agora vamos arrumar a estrutura de diretórios necessária para o correto funcionamento do ZF.</p>
<p><img src="http://felipetonello.com/blog/wp-content/uploads/2007/08/snapshot5.png" alt="diretórios" /></p>
<p><strong>PS: a pasta ZF-tutorial fica dentro do DocumentRoot, que é onde fica suas páginas no servidor(padrão do apache: <em>htdocs/</em> ou <em>/var/www/</em>).</strong></p>
<p>No caso a pasta <em>controllers, models e views</em> estão dentro da pasta <em>app</em>(application, nome sugestivo)<em>. publico</em> é onde vai suas outras coisas normais como imagens e css, js e assim por diante.<em> E lib</em> é a pasta onde vai ficar o ZF.</p>
<p>Entre na pasta onde você descompactou o arquivo tarball(.tar.gz), depois entre na pasta <strong>library</strong> e copie a pasta <strong>zend</strong> para a sua pasta <strong>lib</strong>(na ZF-tutorial) do seu sistema. Talvez você precise mudar(ou copiar) como root, aqui no exemplo vou usar sem o root.</p>
<div class="wp_syntax">
<div class="code">
<pre class="bash" style="font-family: monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span> ~<span style="color: #000000; font-weight: bold;">/</span>ZendFramework-1.0.1<span style="color: #000000; font-weight: bold;">/</span>library
<span style="color: #c20cb9; font-weight: bold;">cp</span> <span style="color: #660033;">-Rfv</span> Zend<span style="color: #000000; font-weight: bold;">/</span> documentRoot_do_apache<span style="color: #000000; font-weight: bold;">/</span>ZF-tutorial<span style="color: #000000; font-weight: bold;">/</span>lib<span style="color: #000000; font-weight: bold;">/</span></pre>
</div>
</div>
<p>Aí depois no diretório <strong>lib</strong> irá ter <strong>lib/Zend</strong>, certo?</p>
<p><img src="http://felipetonello.com/blog/wp-content/uploads/2007/08/snapshot6.png" alt="lib/Zend" /></p>
<blockquote><p>Configurando o Apache</p></blockquote>
<p>Primeira coisa que temos a fazer é abilitar o módulo rewrite do apache.<br />
Edite o arquivo de configuração do apache, <strong>httpd.conf</strong>.<br />
Descomente(tirando o #) a linha onde está escrito:</p>
<div class="wp_syntax">
<div class="code">
<pre class="apache" style="font-family: monospace;"><span style="color: #00007f;">LoadModule</span> rewrite_module modules/mod_rewrite.so
<span style="color: #00007f;">AddModule</span> mod_rewrite.c</pre>
</div>
</div>
<p>Defina o AccessFileName (pode ser no final do arquivo):</p>
<div class="wp_syntax">
<div class="code">
<pre class="apache" style="font-family: monospace;"><span style="color: #00007f;">AccessFileName</span> .htaccess</pre>
</div>
</div>
<p>Setar a opção AllowOverride como All.</p>
<p>Trocar as linhas abaixo:</p>
<div class="wp_syntax">
<div class="code">
<pre class="apache" style="font-family: monospace;"><span style="color: #adadad; font-style: italic;">#&lt;Directory /&gt;</span>
<span style="color: #adadad; font-style: italic;"># Options Indexes FollowSymLinks</span>
<span style="color: #adadad; font-style: italic;"># AllowOverride None</span>
<span style="color: #adadad; font-style: italic;">#&lt;/Directory&gt;</span></pre>
</div>
</div>
<p>por:</p>
<div class="wp_syntax">
<div class="code">
<pre class="apache" style="font-family: monospace;">&lt;directory&gt;
<span style="color: #00007f;">Options</span> <span style="color: #0000ff;">FollowSymLinks</span> <span style="color: #0000ff;">Includes</span>
<span style="color: #00007f;">AllowOverride</span> <span style="color: #00007f;">All</span>
&lt;/directory&gt;</pre>
</div>
</div>
<blockquote><p>Criando o Bootstrapping</p></blockquote>
<p>O controller do ZF, Zend_Controller, é feito para suportar websites com urls limpas.<br />
Então, todas as requisições precisam ser feitas diretamente em um arquivo index.php, essa prática é conhecida como bootstrapping.<br />
E para isso precisamos criar alguns arquivos <strong>.htaccess</strong>.</p>
<p>ZF-tutorial/<strong>.htaccess</strong></p>
<div class="wp_syntax">
<div class="code">
<pre class="apache" style="font-family: monospace;"><span style="color: #00007f;">RewriteEngine</span> <span style="color: #0000ff;">on</span>
<span style="color: #00007f;">RewriteRule</span> .* index.php
php_flag magic_quotes_gpc <span style="color: #0000ff;">off</span>
php_flag register_globals <span style="color: #0000ff;">off</span></pre>
</div>
</div>
<p>Essa RewriteRule quer dizer que para qualquer coisa escrita ele(apache) irá redirecionar para o index.php(que fica dentro do ZF-tutorial, calma que ainda vamos cria-lo). <img class="wp-smiley" src="http://felipetonello.com/blog/wp-includes/images/smilies/icon_smile.gif" alt=":)" /><br />
Alí também setamos algumas configurações do <em>PHP.ini</em>. Essas configurações provavelmente já estão setadas como padrão, mas é bom ter certeza né. Elas só vão funcionar se estiver habilitado o <em>mod_php</em> no <em>httpd.conf</em> do apache.</p>
<p>Agora vamos setar nosso <strong>.htaccess</strong> na pasta <strong>público</strong>. Lá estará os arquivos JavaScript, CSS, imagens e assim por diante. Então vamos habilitar tudo por lá.</p>
<p>ZF-tutorial/publico/<strong>.htaccess</strong></p>
<div class="wp_syntax">
<div class="code">
<pre class="apache" style="font-family: monospace;"><span style="color: #00007f;">RewriteEngine</span> <span style="color: #0000ff;">off</span></pre>
</div>
</div>
<p>Agora na pasta <strong>app</strong> e no <strong>lib</strong> não queremos que nenhum intruso acesse, porque lá estão nossos arquivos preciosos. <img class="wp-smiley" src="http://felipetonello.com/blog/wp-includes/images/smilies/icon_razz.gif" alt=":P" /><br />
ZF-tutorial/app/<strong>.htaccess</strong></p>
<div class="wp_syntax">
<div class="code">
<pre class="apache" style="font-family: monospace;"><span style="color: #00007f;">deny</span> <span style="color: #00007f;">from</span> <span style="color: #00007f;">all</span></pre>
</div>
</div>
<p>ZF-tutorial/lib/<strong>.htaccess</strong></p>
<div class="wp_syntax">
<div class="code">
<pre class="apache" style="font-family: monospace;"><span style="color: #00007f;">deny</span> <span style="color: #00007f;">from</span> <span style="color: #00007f;">all</span></pre>
</div>
</div>
<p>Esse esquema de bootstrapping é recomendação dos desenvolvedores do ZF, ok? Motivo de segurança, sabe como é né.</p>
<blockquote><p>Criando o nosso index.php(bootstrap file)</p></blockquote>
<p>Agora vamos criar nossa index.php na pasta ZF-tutorial.<br />
ZF-tutorial/<strong>index.php</strong></p>
<div class="wp_syntax">
<div class="code">
<pre class="php" style="font-family: monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
<span style="color: #990000;">error_reporting</span><span style="color: #009900;">(</span><span style="color: #000000; font-weight: bold;">E_ALL</span><span style="color: #339933;">|</span>E_STRICT<span style="color: #009900;">)</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// para mostrar os erros, apenas nos testes(precisa estar setado no PHP.ini)</span>

<span style="color: #666666; font-style: italic;">// Seta o timezone pra são paulo (&gt;=PHP 5.1)</span>
<span style="color: #990000;">setlocale</span> <span style="color: #009900;">(</span>LC_ALL<span style="color: #339933;">,</span> <span style="color: #0000ff;">'pt_BR'</span><span style="color: #009900;">)</span><span style="color: #339933;">;</span>
date_default_timezone_set<span style="color: #009900;">(</span><span style="color: #0000ff;">'America/Sao_Paulo'</span><span style="color: #009900;">)</span><span style="color: #339933;">;</span>

<span style="color: #666666; font-style: italic;">/* Seta include path para o funcionamento correto do framework ***OBRIGATÓRIO*** */</span>
<span style="color: #990000;">set_include_path</span><span style="color: #009900;">(</span><span style="color: #0000ff;">'.'</span><span style="color: #339933;">.</span>PATH_SEPARATOR<span style="color: #339933;">.</span><span style="color: #0000ff;">'./lib'</span>
<span style="color: #339933;">.</span>PATH_SEPARATOR<span style="color: #339933;">.</span><span style="color: #0000ff;">'./app/models/'</span> <span style="color: #666666; font-style: italic;">//facilitar depois ao loadar as nossos modelos</span>
<span style="color: #339933;">.</span>PATH_SEPARATOR<span style="color: #339933;">.</span><span style="color: #990000;">get_include_path</span><span style="color: #009900;">(</span><span style="color: #009900;">)</span><span style="color: #009900;">)</span><span style="color: #339933;">;</span>

<span style="color: #666666; font-style: italic;">/* Necessário para loadar qualquer outra classe do framework ***OBRIGATÓRIO*** */</span>
<span style="color: #b1b100;">include</span> <span style="color: #0000ff;">"Zend/Loader.php"</span><span style="color: #339933;">;</span>

<span style="color: #666666; font-style: italic;">//loada o controller front</span>
Zend_Loader<span style="color: #339933;">::</span><span style="color: #004000;">loadClass</span><span style="color: #009900;">(</span><span style="color: #0000ff;">'Zend_Controller_Front'</span><span style="color: #009900;">)</span><span style="color: #339933;">;</span>

<span style="color: #666666; font-style: italic;">/*
 Essa classe se encontra em Zend/Controller/Front.php
 Pode ser loadado diretamente pelo nome se preferir

 Para começar nós precisamos loadar primeiro o front controller
 Ele faz um controle automático para detectar a base URL e fazer o redirecionamento correto
 */</span>
<span style="color: #000088;">$controlador</span> <span style="color: #339933;">=</span> Zend_Controller_Front<span style="color: #339933;">::</span><span style="color: #004000;">getInstance</span><span style="color: #009900;">(</span><span style="color: #009900;">)</span><span style="color: #339933;">;</span>
<span style="color: #000088;">$controlador</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">throwExceptions</span><span style="color: #009900;">(</span><span style="color: #000000; font-weight: bold;">true</span><span style="color: #009900;">)</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// mostrar excessões(apenas para testes)</span>
<span style="color: #000088;">$controlador</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">setControllerDirectory</span><span style="color: #009900;">(</span><span style="color: #0000ff;">'./app/controllers'</span><span style="color: #009900;">)</span><span style="color: #339933;">;</span> <span style="color: #666666; font-style: italic;">// seta diretório com nossos controllers</span>

<span style="color: #666666; font-style: italic;">//Roda o sistema</span>
<span style="color: #000088;">$controlador</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">dispatch</span><span style="color: #009900;">(</span><span style="color: #009900;">)</span><span style="color: #339933;">;</span>

<span style="color: #666666; font-style: italic;">//sem fechar a tag php</span></pre>
</div>
</div>
<p>Note que agente não fecha a tag php para nos previnir de erros usando o header(), no caso de espaços em branco adicionais depois do ?&gt;.</p>
<p>Agora na <em>pasta controllers</em> vamos criar um <strong>IndexController.php</strong>. Esse controller vai entrar em ação sempre que o index for chamado.<br />
Para entender como funciona, precisamos saber como o Zend_Controller_Front trabalha.<br />
O ZF usa um sistema de Controllers(Controladores) e Actions(Ações). E isso é setado diretamente na url(lembra do bootstrapping?). Como?<br />
Usando o nosso exemplo, no formato <strong>http://localhost/ZF-tutorial/<em>index</em>/<em>teste</em></strong> o <strong>index</strong> é o Controller e o <strong>teste</strong> é o Action. Outro exemplo, <strong>http://localhost/ZF-tutorial/<em>foo</em>/<em>bar</em></strong> o <strong>foo</strong> é o Controller e o <strong>bar</strong> é o Action.<br />
E quando você não coloca nada? Exemplo, <strong>http://localhost/ZF-tutorial/</strong> o Zend_Controller_Front considera como <strong>index</strong> o Controller e <strong>index</strong> a Action.<br />
O que vem depois é parâmetro, mas isso é assunto pra depois <img class="wp-smiley" src="http://felipetonello.com/blog/wp-includes/images/smilies/icon_razz.gif" alt=":P" /></p>
<p>Vamos fazer nosso IndexController então<br />
ZF-tutorial/app/controllers/<strong>IndexController.php</strong></p>
<div class="wp_syntax">
<div class="code">
<pre class="php" style="font-family: monospace;"><span style="color: #000000; font-weight: bold;">&lt;?php</span>
<span style="color: #000000; font-weight: bold;">class</span> IndexController <span style="color: #000000; font-weight: bold;">extends</span> Zend_Controller_Action
<span style="color: #009900;">{</span>
  <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">function</span> indexAction<span style="color: #009900;">(</span><span style="color: #009900;">)</span>
  <span style="color: #009900;">{</span>
    <span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">view</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">titulo</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">'Primeiro Tutorial de Zend Framework'</span><span style="color: #339933;">;</span>
    <span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">view</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">detalhe</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">'Olá Mundo!'</span><span style="color: #339933;">;</span>
  <span style="color: #009900;">}</span>
<span style="color: #009900;">}</span></pre>
</div>
</div>
<p><strong>Atenção: Sempre o controller deve levar esse padrão NomeController.php e a classe com o mesmo nome do arquivo. A primeira letra sempre em maiúsculo e o resto minúsculo.<br />
Já os Actions também deve levar esse padrão nomeAction(), sempre minúsculo.</strong></p>
<p>Mas se você for rodar o sistema agora, vai perceber que vai dar uma excpetion gigantesca aí, certo?<br />
Ela está falando que nós não temos o <strong>viewer</strong> para o <em>index</em> action do <em>index</em> controller.</p>
<p>Para criar, precisamos acessar a pasta scripts que está no ZF-tutorial/views/. Lá vamos criar uma pasta para cada Controller nosso, no nosso caso iremos criar uma pasta chamada index(por causa do IndexController). Todos os templates para o IndexController devem estar nessa pasta. O mais legal é que o nome do template leva o nome da action.<br />
Calma, vou explicar: Por padrão cada action você pode ter um template ou não, mas se a action for tem um template para ela, então o template deve levar o mesmo nome da action. Por exemplo index.phtml(extenção do template) é o viewer do indexAction(), sacaram?</p>
<p>Na prática agora:</p>
<div class="wp_syntax">
<div class="code">
<pre class="bash" style="font-family: monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span> documentRoot_do_apache<span style="color: #000000; font-weight: bold;">/</span>ZF-tutorial<span style="color: #000000; font-weight: bold;">/</span>app<span style="color: #000000; font-weight: bold;">/</span>views<span style="color: #000000; font-weight: bold;">/</span>scripts
<span style="color: #c20cb9; font-weight: bold;">mkdir</span> index</pre>
</div>
</div>
<p>Agora nós temos que criar o <strong>index.phtml</strong><br />
ZF-tutorial/app/views/scripts/index/<strong>index.phtml</strong></p>
<div class="wp_syntax">
<div class="code">
<pre class="php" style="font-family: monospace;">&lt;html&gt;
&lt;head&gt;
  &lt;title&gt;&lt;?php <span style="color: #990000;">echo</span> <span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #339933;"></span>escape<span style="color: #009900;">(</span><span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #339933;"></span>titulo<span style="color: #009900;">)</span><span style="color: #339933;">;</span> ?<span style="color: #339933;">&gt;</span><span style="color: #339933;">&lt;/</span>title<span style="color: #339933;">&gt;
&lt;</span><span style="color: #339933;"></span><span style="color: #339933;">/</span>head<span style="color: #339933;">&gt;
&lt;</span><span style="color: #339933;"></span><span style="color: #339933;"></span>body<span style="color: #339933;">&gt;</span>
  &lt;?php <span style="color: #990000;">echo</span> <span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #339933;"></span>escape<span style="color: #009900;">(</span><span style="color: #000088;">$this</span><span style="color: #339933;">-&gt;</span><span style="color: #339933;"></span>detalhe<span style="color: #009900;">)</span><span style="color: #339933;">;</span> ?<span style="color: #339933;">&gt;</span><span style="color: #339933;"></span>
<span style="color: #339933;">&lt;</span><span style="color: #339933;">/</span>body<span style="color: #339933;">&gt;</span>
&lt;<span style="color: #339933;">/</span>html&gt;</pre>
</div>
</div>
<p>é recomendável que usemos o escape para escapar tags html.</p>
<p>Agora vamos testar nossa aplicação.<br />
Acesse o <strong>http://localhost/ZF-tutorial</strong> e depois tente <strong>http://localhost/ZF-tutorial/index/index</strong><br />
Você vai perceber que deu no mesmo.</p>
<blockquote><p>Tarefinha, de leve</p></blockquote>
<p>Agora deixo uma tarefa para vocês: Criar um zfAction(), no IndexController, com seu respectivo viewer. Após criado, acessem <strong>http://localhost/ZF-tutorial/index/zf</strong> e vejam o que aconte!</p>
<blockquote><p>Conclusões</p></blockquote>
<p>Apesar desse tutorial mostrar de maneira simples como funciona o Zend Framework, podemos perceber como o Zend Frameowork é facil de usar e ao mesmo tempo é poderoso.<br />
Para um maior aprendizado, irei postar um novo tutorial com muito mais recursos do ZF.</p>
<p>Por enquanto eu recomendo um <a href="http://akrabat.com/wp-content/uploads/getting-started-with-the-zend-framework_142.pdf">tutorial muito bom</a>(desenvolvedor do ZF), eu me baseei no tutorial dele, e tabmém usem bastante o <a href="http://framework.zend.com/manual">manual</a>.</p>
<p>Acesse a  página de tutoriais do <a href="http://felipetonello.com/blog/tutorial-zend-framework/">Zend Framework</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.arenawm.comoj.com/2009/02/zend-framework-o-que-e/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Microsoft divulga detalhes do Windows Mobile 6.5</title>
		<link>http://www.arenawm.comoj.com/2009/02/microsoft-divulga-detalhes-do-windows-mobile-65/</link>
		<comments>http://www.arenawm.comoj.com/2009/02/microsoft-divulga-detalhes-do-windows-mobile-65/#comments</comments>
		<pubDate>Tue, 17 Feb 2009 19:35:24 +0000</pubDate>
		<dc:creator>Mateus Gomes</dc:creator>
				<category><![CDATA[Notícias]]></category>
		<category><![CDATA[detalhes do Windows Mobile 6.5]]></category>
		<category><![CDATA[Windows Mobile]]></category>
		<category><![CDATA[Windows Mobile 6.5]]></category>

		<guid isPermaLink="false">http://www.arenawm.comoj.com/?p=129</guid>
		<description><![CDATA[A Microsoft lançou oficialmente, nesta segunda-feira, no Mobile World Congress, o Windows Mobile 6.5.]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.arenawm.comoj.com/wp-content/uploads/2009/02/20090217_wmobile.jpg"><img class="alignright size-full wp-image-138" title="20090217_wmobile" src="http://www.arenawm.comoj.com/wp-content/uploads/2009/02/20090217_wmobile.jpg" alt="20090217_wmobile" width="149" height="199" /></a>A Microsoft lançou oficialmente, nesta segunda-feira, no Mobile World Congress, o Windows Mobile 6.5. As novas características do sistema operacional para smartphones foram demonstradas por Steve Ballmer, CEO da empresa.</p>
<p>A mudança mais aparente é a nova interface, planejada, de acordo com a empresa, para oferecer navegação mais simples. As ferramentas principais do sistema aparecem logo na tela inicial, como na foto. Além disso, haverá também uma versão para dispositivos que não tenham tela sensível ao toque.</p>
<p>Outro destaque é a loja virtual chamada de Windows Marketplace for Mobile. Com ela, o usuário poderá buscar e comprar aplicativos para seu smartphone. Os desenvolvedores que já criaram softwares também poderão oferecê-los, mas antes será necessário que a Microsoft faça testes de segurança e compatibilidade.</p>
<p>A navegação na web também promete ficar melhor. Baseado no Internet Explorer 6, o browser móvel terá suporte a Flash e JavaScript e outras ferramentas para facilitar a visualização da página, como uma barra na lateral direita da tela para uso do zoom.</p>
<p>O sistema virá também com o serviço My Phone, por meio do qual as informações do telefone (como mensagens, contatos e fotos) são sincronizadas com um site da Microsoft. Caso o aparelho seja perdido ou roubado, ou mesmo substituído por um modelo mais recente, o usuário conseguiria restaurar os dados.</p>
<p>Os primeiros aparelhos equipados com Windows Mobile 6.5 devem chegar ao mercado no fim deste ano. A LG deve lançar um aparelho equipado com o sistema, e a HTC oferecerá a atualização para alguns de seus smartphones.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.arenawm.comoj.com/2009/02/microsoft-divulga-detalhes-do-windows-mobile-65/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- www.000webhost.com Analytics Code -->
<script type="text/javascript" src="http://analytics.hosting24.com/count.php"></script>
<noscript><a href="http://www.hosting24.com/"><img src="http://analytics.hosting24.com/count.php" alt="web hosting" /></a></noscript>
<!-- End Of Code -->
