<?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>Jeveaux&#039;s Weblog &#187; Applets</title>
	<atom:link href="http://www.jeveaux.com/blog/category/java/applets/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jeveaux.com/blog</link>
	<description>Tudo certo e nada resolvido</description>
	<lastBuildDate>Thu, 08 Jul 2010 17:10:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Segurança: Ajax X Applets</title>
		<link>http://www.jeveaux.com/blog/2007/seguranca-ajax-x-applets/</link>
		<comments>http://www.jeveaux.com/blog/2007/seguranca-ajax-x-applets/#comments</comments>
		<pubDate>Wed, 19 Sep 2007 13:10:51 +0000</pubDate>
		<dc:creator>jeveaux</dc:creator>
				<category><![CDATA[Applets]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Segurança]]></category>
		<category><![CDATA[WTF]]></category>

		<guid isPermaLink="false">http://www.jeveaux.com/blog/2007/seguranca-ajax-x-applets/</guid>
		<description><![CDATA[Ontem recebi um link para um projeto nacional que tem tido muito sucesso, e estava lendo as informações no site e encontrei algo que é um perfeito exemplo de má interpretação de tecnologias, e isso me deixou bastante intrigado, é uma questão sobre a camada de apresentação do projeto, que é feita em Ajax, até [...]]]></description>
			<content:encoded><![CDATA[<p>Ontem recebi um link para um projeto nacional que tem tido muito sucesso, e estava lendo as informações no site e encontrei algo que é um perfeito exemplo de má interpretação de tecnologias, e isso me deixou bastante intrigado, é uma questão sobre a camada de apresentação do projeto, que é feita em Ajax, até aí tudo bem certo? (afinal, o que de novo hoje em dia não usa Ajax?)</p>
<blockquote><p>Não, não quero colocar aqui o projeto e o link para o site pois não quero que esse post soe como uma crítica direto ao projeto, pois não é, é apenas uma crítica a forma em que uma questão em particular foi encarada, o que não tira os méritos do projeto.</p></blockquote>
<p>IMHO, o problema foi o modo com que isso foi exposto e, até de certa forma, usado como motivo para justificar a adoção ao Ajax. No site do projeto existem claramente duas seções: <strong>Ajax </strong>e <strong>Não Utiliza Applets</strong>. A categoria Ajax é simples e mostra algumas vantagens de se utilizar Ajax na  apresentação de aplicações Web. Já a categoria &#8220;Não Utiliza Applets&#8221; possui uma série de divagações das quais não concordei muito, e vou dizer o porque.</p>
<p>Começando:</p>
<blockquote><p>Applets &#8230; &#8230;. além de serem  mais lentos e inseguros&#8230;</p></blockquote>
<p>Lentos eu até concordo quando comparados com utilitários bem escritos com JavaScript, mas isso não quer dizer que sempre será mais lento, não é difícil escorregar e perder a linha gerando na aplicação vários (ou até dezenas) <em>Mega Bytes</em> de JavaScript que serão tão lentos quanto um applet para carregar e poderão sacrificar o cliente como qualquer aplicação desktop repleta de <em>memory leaks</em> (quem nunca viu o Firefox sugando seus ~400Mb++ de memória?).</p>
<p>E a segurança, a não ser que o cliente esteja utilizando uma versão antiga da JVM (cujos bug já são conhecidos e possuem correção, geralmente em versões mais novas) eu concordo que possa haver problemas com segurança, mas ainda não concordo que a segurança de um applet seja inferior à de algum componente escrito em JavaScript. Podemos começar falando de vulnerabilidade ao cliente, com o applet, ou o cilente tem a JVM ou não tem, portanto, ou o applet <strong>irá</strong> funcionar ou <strong>não irá</strong>, já com o JavaScript, o controle de funcionar ou não, não é como um ON/OFF, o usuário tem diversas formas de bloquear e desbloquear determinadas operações, sem contar as formas existentes de interferir no fluxo normal de processamento do JavaScript, com o <a href="https://addons.mozilla.org/en-US/firefox/addon/748">GraseMonkey</a>, por exemplo, é fácil escrever códigos que se integram (inicialmente à apresentação) ao código JavaScript de qualquer página. Sem contar as possíveis formas de se utilizar de <a href="http://en.wikipedia.org/wiki/Cross-site_scripting">XSS</a> para explorar falhas no DOM, HTML/Scripts injection, etc.</p>
<blockquote><p>Em relação ao Javascript, os applets são mais lentos de processar alem de possuir espaço muito delimitado na página onde se executam</p></blockquote>
<p>Essa parte de integração com os demais objetos da página realmente é um ponto fraco, muito fraco, quando utilizamos applets. Já a questão de velocidade de processamento, é fácil confundir o tempo de processamento gasto numa determinada funcionalidade com a quantidade de operações que cada funcionalidade realmente executa, mas como eu nunca fiz esse tipo de teste &#8211; de escrever um applet e um javascript que façam a mesma coisa &#8211; não irei muito além, apesar de não acreditar que possam haver diferenças tão grandes, afinal, tudo é executado no cliente, com os mesmos recursos.</p>
<blockquote><p>todos os recursos são feitos <strong>sem a utilização  de Applets</strong> <em>(com eufemismo &#8211; isso não tem no site <img src='http://www.jeveaux.com/blog/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> )</em>, os sistemas são baseados principalmente no AJAX, o que garante velocidade e segurança, além de que não é necessária a instalação da JVM na máquina do cliente</p></blockquote>
<p>Pois é, antes que arremessem as pedras, não estou aqui defendendo o uso de applets frente a componentes Ajax, muito pelo contrário, eu já trabalhei bastante com applets e sei o quanto é chato, em todos os aspectos, e também já trabalhei, trabalho e pretendo trabalhar por um bom tempo com componentes Ajax bem escritos, a razão pela qual escrevi este post foi para, de certa forma, criticar o modo com que foi exposto o motivo para usar Ajax, não acho que seja necessário dizer: &#8220;- Uso Ajax pois Applets são lentos, inseguros, gordos e feios.&#8221;; afinal de contas, não é bem assim.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeveaux.com/blog/2007/seguranca-ajax-x-applets/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
