Avaliando técnicas de debugging javascript para diversos browsers

A partir da dificuldade da equipe na qual faço parte existe uma grande dilema para debug de javascript para browser’s como Internet Explorer a fim de obter as mesmas facilidades do firebug, indo bem além de um simples debug.

Existem alguns outros pontos que podem ser incorporados a fim de manter facilidade para desenvolvimento de aplicações como JQuery, muito legal a idéia, ainda melhor utilizado em conjunto com outros componentes como ExtJS, Dojo, Prototype, DWR, entre outros. Resumindo um pouco dos benefícios que o JQuery temos facilidade na obtenção de elementos, manipulação de DOM, tratamento de eventos, animações, uso de AJAX e melhor de tudo oferecendo compatibilidade incorporada, sem termos que nos preocuparmos com browser’s, entre outros pontos como versões de CSS(preocupante). Posteriormente estarei testando em minhas aplicações. Segue abaixo algumas referências:

Bem chega de papo. Voltando as origens, e levando em consideração as indicações que fiz anteriormente no uso do firebug, venho no mesmo barco noticiando uma pequena novidade disponível de que foi lançado o Firebug Lite a pouco tempo com o objetivo de oferecer suporte a API para auxílio de debug a partir do seu console. Isto demonstra a necessidade enormemente e ausência total de poder no controle do stack point do código em execução, entre outros facilitadores importantes como [Inspeção e edição de HTML], [Visualização de Métricas de nível CSS], [Monitoramento de atividade da rede por solicitação/resposta], bem como navegação de conteúdo DHTML renderizado.

Espero que em pouco tempo, também tenhamos esta facilidade para outros browser’s, assim como o firebug lite vem buscando oferecer. Acho que não demorará muito, pois a comunidade vêem aumentando! E quando isto acontece, é um sinal para apostar suas fichas nela. É como bolsa de valores. Já desenvolveram até com suporte ao IPhone.

A adoção também vêem aumentando a partir do navegador Opera, ainda mais pela comunidade que liberou a nova versão do Opera Dragonfly. Ele tem quase todos os requisitos funcionais do firebug, bem como adicional suporte a versão mobile. Se você for analisar direitinho no seu dia-a-dia, aplicações comerciais(atacado, varejo, farmácias, logísticas, etc.) que foram desenvolvidas em ambientes lamp, pelo que tenho visto, vem sendo sugeridos uso do opera/firefox no cliente. E a garantia é fácil saber.

Em contrapartida, existem algumas considerações em relação à outras possibilidades disponíveis bastante recomendadas e sugeridas, que podem ser tranquilarmente absorvidas pela equipe, necessitando apenas configuração de ambiente para isto. Existem diversos post sobre o assunto no google,(interessantes [1][2]) inclusive do plugin IETester no qual oferece renderização de conteúdo para teste em uma determinada versão, no qual transparecem que eles se sentiram tão culpados de tantas incompatibilidades que agora estão tentando correr atrás dentre plugins e novas ferramentas como atrativos. Não sei as raízes mas pode ser um parceiro ou empresa comprada da microsoft.

Ainda sobre o IETester, andei verificando que eles desenvolveram também o DebugBar. Achei uma puta sacanagem eles colocarem que é de graça e logo abaixo bem pequeno que apenas para uso pessoal e ainda trial por 60 dias. Tava tão feliz testando os recursos que deu logo um desânimo. Embora, não quero desmerecer o mérito da equipe que a desenvolveu, mas não vi nenhum recurso adicional e/ou diferencial em relação ao firebug. Aproveitando aqui também, eles desenvolveram o CompanionJS que visa atender os mesmos requisitos atuais iniciais do firebug lite, exceto compatibilidade entre diversos browsers.

Avaliando outros fornecedores que dispõe de funcionalidade similar, não achei a altura. Apenas o Nitobi,simples, porém útil. A Minha lista de ferramentas como add-on’s e plugins disponíveis resume-se aqui.

Analisando agora do ponto de vista das IDE’s, e puxando sem querer para o lado do java, =D, seguem algumas correntes que podem ser aproveitadas e avaliadas para adequação no seu projeto do qual será e/ou está sendo desenvolvido:

Eclipse

NetBeans (comparativo recente com VS2008)

Bem como outras opções a partir do IntelliJ IDEA e WebSphere (até a versão 5 acredito não ser possível).

Com todas estas informações em suas mãos é verídico que cada browser oferece uma particularidade prática de ferramentas para automatizar e garantir compatibilidade buscando motivação dentre a comunidade no qual desenvolve aplicações utilizados por este(mesmo browser).

Levando em consideração a isto, caso você tenha caído na lista dos que deverão oferecer compatibilidade no seu projeto para diversos browser’s, prepare-se pois a equipe de testes está por vir, e eles não terão piedade em salientar situações adversas. Se eles forem mais espertinhos utilizarão técnicas como pairwise e decision tables. Lembrando que o objetivo final deste artigo não é abordar ferramentas para testes, isto é outro espectro! Só estou mostrando de onde nascem as correntes que motivam os desenvolvedores terem ferramentas como resguarda ou também chamado arma secreta.

Não podemos garantir a usabilidade. Então a dica é não se arriscar e tampouco se bitolar. Procure se beneficiar a partir das ferramentas disponíveis para cada browser em particular e siga corretamente as especificações recomendados pela w3c. Caso seja necessário ative/instale o uso de memory leak do seu browser, visualize layout para diversos navegadores, bem como boas técnicas, boas referências e resumos para cada tipo de tecnologia.

Mas generalizando os fatos, recomendo utilizar o firefox, não só porque ele é mais rápido, mas porque oferece uma variedade de ferramentas irão contemplar todas as suas necessidades, fora suporte a diversas plataformas(win+mac+linux+unix). Seguem boa relação de ferramentas para incrementar seu firefox:

Contudo isto foi só um resumo e parecer do que andei pesquisando e avaliando, afinal hoje temos bastantes opções de fornecedores, e isto é um ponto muito positivo, do qual estabelece competitividade e grandes inovações a fim de atrair novos mercados neste mundo utópico que parece não ter mais caminho de volta.

Gostaria de um feedback de quem quiser complementar ou criticar meu ponto de vista. Fallow!!!

Deixe uma resposta

Faça o login usando um destes métodos para comentar:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s


%d blogueiros gostam disto: