quarta-feira, 28 de outubro de 2009

Protegendo o SWF

Um assunto que surge frequentemente nas listas de discussão e que também me é questionado diretamente é como proteger o swf de pirataria.

Na verdade nunca me preocupei muito com isso, porque descompiladores há aos montes e ferramentas para proteger também, independente da linguagem de programação. As ferramentas de proteção até onde vi são "ofuscadores", isto é, elas trocam os nomes de propriedades e funções dificultando assim a interpretação, mas nada que não pode ser facilitado com um replace all.

Entendo que esta preocupação é porque o swf é baixado para a máquina do cliente, mas esta é só a camada de visão as regras de negócio, que é o mais importante, devem ficar no servidor e neste caso, precisamos nos preocupar com esta ponta, e aí pergunto, como proteger o código de linguagens interpretadas como o PHP?

Me preocupo com a segurança dos dados, com sql injection, uso de https, criptografia de senhas, etc.

Analisar um código de outra pessoa não é nada fácil, cada um programa de uma forma, além que o "pirata" precisa conhecer as linguagens que foram usadas para criar a aplicação.
Neste caso pergunto, será que vale o tempo gasto para entender um código descompilado?
Imagine um ERP, não adianta só entender o código descompilado, será necessário entender o fluxo deste tipo de aplicação e também as leis aplicadas, como as de ICMS, etc.

Em resumo, acredito que a possibilidade de ter o trabalho "pirateado" é tão pequena que não compensa tanta preocupação.

terça-feira, 13 de outubro de 2009

Global error handling

Uma das novidades do Flash Player 10.1 que achei muito interessante é o Global error handling.

Como acontece no Java onde a exceção é "jogada" para cima até a rotina que iniciou o processo, isto se não tiver nenhum try/catch tratando a exceção, assim também ocorrerá no novo Flash Player. Com isso, será possível criar uma única rotina de tratamento de erros.

Saiba mais sobre esta e outras features nos links adicionais do meu post anterior.

terça-feira, 6 de outubro de 2009

Flash Mobile

De todas as ferramentas para desenvolvimento RIA, deixo claro que prefiro o Flex.
Mas, uma preocupação que tinha é o Flash não rodar em Mobile, um mercado muito lucrativo.
Mas a Adobe não está perdendo tempo, ela anunciou o Flash Player 10.1.

Veja mais detalhes no blog do Igor Costa e também neste.

quarta-feira, 30 de setembro de 2009

Tree - item selecionado é branch?

Se for necessário saber se o item selecionado de uma Tree é um branch (pasta) ou não você pode usar a propriedade dataDescriptor da Tree. Por exemplo, numa função que é listener do evento itemClick da Tree você pode testar:

private function itemClickHandler(event:ListEvent):void {
var isBranch:Boolean = myTree.dataDescriptor.isBranch(myTree.selectedItem);

Alert.show((isBranch) ? "Pasta" : "Folha");
}

quinta-feira, 24 de setembro de 2009

Controle de Versão do Flex Builder

No Flex Builder tem um "mini" controlador de versão que você encontra nas opções: Compare / Team / Replace with > Local History quando se vai com o botão direito sobre o arquivo. Cada save de arquivo gera uma nova entrada no histórico local.
Pode-se comparar uma versão com outra do mesmo arquivo, em Compare / Team > Local History marcando as entradas que se quer comparar, clicando com o botão direito e selecionando Compare with each Other.

Este recurso é básico, por isso, o melhor é instalar um verdadeiro controlador de versões, e neste caso recomendo o SubVersion e o plug-in do Eclipse SubEclipse.
Na JavaMagazine 64 saiu um artigo sobre estas duas ferramentas, explicando as diferenças entre SVN e CVS e também explicando como instalar um servidor SubVersion e como utilizar o SubEclipse. Mesmo para projetos com único desenvolvedor o uso de controlador de versões é recomendado.


Neste link tem uma documentação técnica do SVN.

quarta-feira, 23 de setembro de 2009

Novidades do Flex 4

Recebi de um colega um artigo sobre as novidades do Flex 4, escrito pelo Daniel Schmitz.
Recomendo para quem quer usar o Flex 4 ou quer saber o que vai mudar, o artigo é muito bom, vai direto ao ponto.

Já coloquei nos meus bookmarks.
O link para o artigo é este.

sexta-feira, 28 de agosto de 2009

Source code formatter for MXML/AS3

Tenho usado este plug-in já faz algum tempo e recomendo.

Fonte: http://www.newsight.de/2009/02/09/source-code-formatter-for-mxmlas3/

Outro plug-in é o sugerido pelo Eduardo Kraus no seu post: Ctrl+Shift+F no Flex Builder.