jQuery é a maior biblioteca open source, cross-browser, compatível com CSS3, JavaScript e facilitou bastante a criação de scripts no lado do cliente.

A sintaxe é simples e o jQuery pode produzir animações quase semelhantes a Flash. Ao contrário do Flash, o jQuery é visualizável no iOS e produz páginas da Web dinâmicas com facilidade.

O jQuery está crescendo rapidamente em popularidade e, com a recente conferência jQuery realizada em San Francisco no final de junho, parece um momento oportuno para iniciar uma conversa sobre o jQuery e especificamente alguns dos prós e contras de usá-lo para trabalhos mais exigentes.

O bom

Talvez a melhor coisa sobre o jQuery seja que você não precisa ser um gênio da programação para impressionar os clientes.

Geralmente, há mais de uma maneira de eliminar um gato, mas a capacidade de adicionar plug-ins em cima da biblioteca base torna a jQuery uma solução incrivelmente flexível e, acima de tudo, rápida. Usar o CSS pode ser a melhor escolha em alguns casos (veja abaixo), mas se suas habilidades de programação forem mais limitadas, a seleção do jQuery irá ajudá-lo a realizar o trabalho.

O desenvolvimento da Web é, com muita freqüência, um processo que exige tempo e economia de minutos ou mesmo horas de trabalho, o que não é um luxo, mas uma necessidade. John Resig e os outros desenvolvedores por trás do projeto jQuery entendem genuinamente a equação tempo / dinheiro que os desenvolvedores web enfrentam diariamente. Implementação rápida geralmente significa mais dólares no seu bolso.

A verbosidade do JavaScript, a complexidade da implementação do CSS e as desvantagens bem divulgadas do Flash tornam o jQuery a solução mais prática para muitos problemas comuns, incluindo DOM transverses, manipulação de eventos, interações AJAX e animação.

A Microsoft e a Nokia estão ambas por trás da jQuery e planejam integrá-la em suas novas plataformas, sugerindo um futuro brilhante pela frente. Além disso, quase todos na comunidade de código aberto estão por trás do jQuery porque:

  • O apoio da comunidade é ótimo
  • Torna a manipulação DOM indolor
  • Ele joga bem com o AJAX
  • Faz animação básica um pedaço de bolo
  • Definir seleção é indolor
  • Existem plug-ins
  • Bugs são identificados e corrigidos rapidamente

O código aberto permite um crescimento rápido e dinâmico. Não há licenças para se preocupar e é gratuito. Free na verdade se traduz em uma comunidade de mentes que é muito mais ampla e mais inteligente do que os desenvolvedores mantidos em cativeiro por uma empresa.

O núcleo do jQuery foi construído por algumas das mentes mais brilhantes do negócio e o desenvolvimento está literalmente explodindo.

Community

Corte de papel de homem de negócios no livro antigo via Shutterstock

O mal

O código aberto tem seus problemas: por exemplo, nem tudo é construído de acordo com um padrão comum. Isso é bom se o seu cliente - ou, mais provavelmente, você - tiver tempo e dinheiro para investir em ajustes de código. No entanto, se o tempo, dinheiro, habilidade ou todos os três estiverem em falta, suas costas estarão contra a parede quando algo der errado.

A versão estável mais recente do jQuery (v1.7.2) foi lançada em 21 de março de 2012, portanto, a capacidade de encontrar soluções comuns para o seu problema exato, retiradas do pool da comunidade, provavelmente estará em falta por algum tempo.

Outro grande problema com o jQuery é que existem várias versões por aí. Algumas versões jogam bem com outras e outras não. Por exemplo, a compatibilidade do navegador com animações tem sido um problema de longa data com as animações do jQuery. Certificar-se de que você está executando a última atualização do jQuery corrigirá muitos dos problemas conhecidos relacionados às animações do jQuery, mas você está escolhendo entre hospedar a biblioteca e atualizar continuamente ou carregar a biblioteca do Google e arriscar a incompatibilidade com o código novas versões são lançadas.

O kit de ferramentas de controle AJAX fornece controles no lado do servidor. Isso dá ao desenvolvedor muito mais poder e flexibilidade. Mas o kit de ferramentas AJAX é grande e volumoso comparado ao jQuery. Como o jQuery continua a desenvolver o código leve, provavelmente vencerá, especialmente com a Microsoft a bordo - ao apoiar o jQuery, a Microsoft está essencialmente despejando seus próprios MicrosoftAjax.js. Na superfície, os resultados do uso do jQuery para lidar com XML são muito legais; existem tão poucas linhas de código, tudo parece tão fácil ...

No entanto, lidar com AJAX e jQuery é uma área comum onde as desvantagens de não ser realmente um programador frequentemente se tornam aparentes. Por exemplo, entender as diferenças fundamentais entre as solicitações HTTP GET e POST é vital, e ainda assim muitos designers que não possuem esse conhecimento, esperam que a jQuery atenda à sua folga. Existem armadilhas que os designers podem não estar cientes, por exemplo, as solicitações GET podem ser limitadas em tamanho e muitos programadores inexperientes simplesmente mudam para o POST para resolver o problema; isso pode ser uma má idéia, o GET não faz modificações duradouras no servidor, enquanto o POST pode. O POST não é um comando que deve ser arbitrariamente repetido, mas é usado involuntariamente às vezes.

Outro problema comum relacionado ao servidor jQuery é a sua feia cabeça se $ .get for usado ao invés de $ .getJSON (notação de objeto javascript). Não usar $ .getJSON para problemas de transporte de dados pode causar todos os tipos de estragos.

Don't run before you can walk

Menino jovem, fingindo, conduzir, um, gigante, terra, mover via Shutterstock

É fácil ser legal com o jQuery, não é tão fácil ser legal e correto.

Para usar o jQuery e especialmente legal, o jQuery requer um compromisso com a comunidade. O desenvolvimento é rápido e emocionante, mas isso também pode levar a problemas relacionados ao tempo. O desenvolvimento é tão rápido em algumas áreas que, se um desenvolvedor não seguir e participar da comunidade regularmente, é fácil ficar na poeira. Este é um compromisso de tempo adicional para desenvolvedores que estão precisando de tempo tentando administrar um negócio, cuidar de vários clientes, implementar campanhas de SEO e Marketing de Conteúdo e ainda ver seus filhos.

É necessário avaliar realisticamente seu nível de habilidade e o tempo necessário para se manter no topo de todos os novos desenvolvimentos do jQuery.

E o feio

Os dois grandes elefantes no armário relacionados ao jQuery foram deixados para o final: velocidade e código de espaguete.

O jQuery pode ser lento e, às vezes, para animação muito mais lenta do que usar CSS. Em um site complexo grande, cada pequena porção de um segundo conta. A razão para isso é dupla: várias manipulações de DOM, uma sobre a outra, podem atrasar um site; em segundo lugar, o CSS usa transições do lado do navegador para animações e é escrito em C ++. Isso faz com que seja um pouco mais rápido que o JavaScript.

jQuery espaguete, se você ainda não se deparou com isso, com o tempo você vai. O maior atributo do jQuery - como é fácil de usar - é também a cura de Aquiles. O jQuery é uma biblioteca projetada para ajudar com DOM transverses e seletores CSS. Isso é feito com eficiência incrível. Não se destina a ser usado como um Framework para interação do lado do cliente. Quando usado incorretamente, especialmente os seletores CSS do jQuery, o resultado final pode ser um código que cresce e cresce em um arquivo .js do tamanho de um monstro até que seja impossível manter. Lance em retornos de chamada, algumas mudanças de design cosméticas, e nomeação genérica e abaixo a estrada, enquanto mantendo um site de jQuery pode se tornar um pesadelo.

Eating spaghetti

Foto vintage de dois jovens rapazes comendo espaguete com as mãos via Shutterstock

A comunidade jQuery está lidando com os problemas que envolvem o espaguete jQuery. Cedric Dugas aumentou a conscientização sobre o espaguete jQuery em Confoo. Ele, entre outros, dedica-se a lembrar os programadores de usar as melhores práticas com o jQuery para evitar tigelas gigantescas de espaguete. Como um designer de front-end comentou, para usar realmente o jQuery, você precisa conhecer e entender o JavaScript. Cortar e colar definitivamente tem suas desvantagens, pois permite resultados sem entendimento. Embora isso possa funcionar por um tempo, ele também pode causar todos os tipos de problemas de manutenção a longo prazo.

Usar um bom framework pode ajudar a evitar alguns dos spaghetti jQuery. Infelizmente, os frameworks são realmente uma área nova e leva tempo para escolher o (s) framework (s) certo (s) e fazê-los jogar bem uns com os outros. Novamente, esse tempo adicional precisa ser considerado na equação de jQuery. No momento, existem muitos frameworks procurando dominar o espaço MVS Framework do lado do cliente. Backbone.js é o mais popular no momento, mas tem alguma concorrência séria.

Em suma

O jQuery é uma das melhores bibliotecas existentes e pode tornar a escrita do JavaScript muito mais fácil. No entanto, como muitas ferramentas, o jQuery é mais usado por um especialista em artesãos. Todos nós nos enquadramos nessa categoria? Claro que não. Isso significa que não devemos usar o jQuery? Claro que não. Apenas sugere que ter bom senso para pedir ajuda quando você está fora de sua profundidade é uma boa ideia na maior parte do tempo.

Você usa jQuery e também conhece JavaScript? Você precisa entender a programação para implementar o jQuery? Deixe-nos saber o que você pensa nos comentários.