tykfavZ

Nov
25
2007

Frameworks Javascript - Usar ou não? (parte 2)

Frameworks Javascript

Tradução permitida por Brian Reindel

No artigo anterior citei as vantagens e as desvantagens mais visíveis dos frameworks javacript. No mesmo dia, após ter escrito encontrei uma matéria que enfoca justamente na última parte, onde eu dei apenas uma pequena pincelada. Se você quer mesmo usar um fw, então deve ler esses passos para saber se sua escolha é a mais acertada.

Como escolher um framework JavaScript

Eficiência. Projetos vivem ou morrem por causa dela. Um framework JavaScript talvez não lhe torne um melhor programador, mas vai torná-lo mais eficiente. E isso por si só já deveria ser motivo suficiente para escolher um framework, ou biblioteca se você preferir. A não ser que você decida construir o seu próprio, existe uma grande variedade de opções disponíveis para os desenvolvedores. No entanto, escolher a opção certa pode ser complicado, e tentar seguir a opinião de quem não é neutro no assunto pode ser errado.

O melhor conselho que eu posso oferecer é ser flexível na sua abordagem, e antes de tudo fazer as perguntas certas. A lista a seguir deve ajudá-lo a começar.

Quais são os requerimentos do seu projeto?
A primeira e mais importante questão que você precisa se perguntar é: Quais são as exigências do seu projeto? Vai ser um site da Web ou aplicativo que requer AJAX, forte apoio à manipulação de eventos, ou só quer que fique cheio de efeitos? Quantas funcionalidades diferentes que você precisa, e qual o nível de experiência será requerido por outros programadores e designers para usar o seu sistema? Se você precisa de pouca coisa, poderá ter sucesso com fws leves, e preferivelmente modulares.

O framework funciona em todos os navegadores mais usados?
Depois de conhecer o seu público-alvo, bem como os requisitos do seu projeto, é necessário pesquisar se o framework funciona bem em todos os navegadores mais usados (também chamados de A-Grade browsers). A maioria dos fws funcionam, mas muitas vezes existem algumas exceções - tipicamente com o Safari do Mac. Porém se você está construindo uma aplicação Web interna para uma Intranet, você pode apenas se apoiar em um conjunto restrito de navegadores. Independentemente, é importante ter suporte à todos os navegadores A-Grade.

Por trás está uma equipe de desenvolvimento?
Vários fws são construídos por um único programador, mas os melhores são mantidos por uma equipe central de desenvolvedores. Isso ajuda a garantir atualizações regulares, rápida resposta aos relatos de bugs, e manter o suporte rápido. Com uma equipe central de desenvolvedores, é provável que o código seja mais rigorosamente testado, e segue regras de construção. Um único par de olhos pode deixar de perceber o óbvio mais facilmente.

Quão maduro é o Framework?
Mais do que qualquer outra coisa, a idade de um fw demonstra um compromisso com a longevidade, bem como uma base sólida. Um fw maduro o suficiente não fica eternamente em versão beta, e tem versões lançadas com periodicidade. Deve haver uma comunidade em crescimento ao redor do projeto e, além de estar sob uma licença de código aberto, um fw maduro também pode manter um repositório CVS ou Subversion. Assim as correções de bugs podem ser feitas em uma build sem um lançamento público, o que representa uma enorme vantagem.

De quanto em quanto tempo são lançadas novas versões?
Mesmo que não seja uma regra das mais importantes, ainda é bom ter isso em mente. Se você percebe que a comunidade do fw escolhido costuma reclamar de falta de atualizações, isso é um mal sinal. Os longos atrasos para os lançamentos são também um sinal de que você não irá ter muito apoio do fw nos seus projetos futuros. Do outro lado da moeda, lançamentos demais e em intervalos de tempo muito pequenos podem indicar instabilidade do fw, o que desestimula a confiar no código.

A documentação é fácil de entender?
Uma das coisas que mais diferencia os frameworks hoje é o formato de sua documentação. Isto não só inclui a documentação oficial para a API, mas também inclui livros, tutoriais e blogs. O pior tipo de documentação é aquela que se apóia só na sintaxe. Procure um fw que inclua exemplos de cada método e de cada propriedade, e que é atualizado para atender as necessidades da comunidade. A documentação deve ser simples de entender. Acredite, isso pode salvar muito tempo de desenvolvimento.

Há uma comunidade ativa?
Uma comunidade ativa não garante um fw de qualidade, mas ajuda-o a evoluir. A comunidade também é uma ótima ferramenta que pode ser usada por você quando tiver alguma dúvida. Existem fóruns, ou pelo menos um Grupo do Google? São usuários experientes dispostos e aptos a dar uma mão, ou eles vão te mandar à outro lugar para procurar ajuda? Desenvolvem extensões e plugins para o fw, ou contribuem para a base do fw? Todas estas são questões importantes.

São feitos testes de velocidade frequentemente?
Tenho ainda a esperança de encontrar um fw que dê mais importância para a velocidade e uso de memória. No entanto, sem testes, como você pode saber o quão efetivo é o fw escolhido? Testes de benchmark (efetividade) são muitas vezes questionáveis, se usados para determinar a qualidade do código usado em um fw, mas eles demonstram que os desenvolvedores estão preocupados em adotar as melhores práticas de qualidade. Mesmo uma pequena melhoria da velocidade ou diminuição do tamanho físico do fw devem ser vistos como sinal positivo.

O framework é extensível à que ponto?
Extensibilidade é normalmente um requisito de programadores experientes, e raramente é um pedido de designers. Apoio de plugins é, sem dúvida, uma vantagem para qualquer fw, mas desenvolvedores geralmente querem saber apenas qual a dificuldade para desvendar o funcionamento da base? Várias camadas de funcionalidades são com certeza uma vantagem para qualquer fw, mas não são exatamente uma necessidade - Já que você próprio pode desenvolver suas extensões.

Você gosta do estilo da API?
Este é um aspecto importante, mas que somente é compreendida pelos desenvolvedores depois de usar vários fws diferentes em projetos diferentes. Reclamações sobre frameworks como Yahoo! UI são, em geral, em relação ao estilo com o qual a API foi construída. Aspectos como correntes são importantes mas não devem ser superestimadas. Você pode acabar ficando bastante irritado com as formas de implementar coisas bem mais simples.

: Comentários
Javascript, Traduções : Categorias
: Tags

Deixe um comentário