Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Uso do JQuery em projetos pequenos!

Douglas, eu li um artigo do Diego Eis da Tableless sobre JQuery, em que ele argumenta sobre a possibilidade de não considerar o uso de JQuery em projetos pequenos ou em projetos com pouco JavaScript, defendendo a dificuldade no processo de atualização do código. O que você acha desse argumento? Será que é interessante seguir essa prática?

Obrigado pela atenção!

5 respostas

Olá André,

Vou deixar minhas considerações aqui também.

jQuery é com certeza uma mão na roda para fazer qualquer coisa com Javascript, ele facilita todas as ações, tornando o código "menor" e fácil de dar manutenção.

Mas as pessoas esquecem de que ele se trata de uma lib javascript, e que ele tem bastante código por trás dos panos.

Na versão uncrompressed são 10.253 linhas de código a mais no seu projeto!

jQuery (3.2.1)

Em um mundo onde mobile está tomando conta de tudo, onde você tem dispositivos com conexão que alternam entre uma conexão de fibra ótica e os 3G da vida, você tem que se preocupar com cada linha de código que pode salvar no projeto. Quem nunca passou raiva com um site que não carrega direito no mobile (ou até mesmo no desktop)?

Mas o uso ou não do jQuery vai de uma análise de cada projeto. Veja bem, eu trabalho em uma consultoria onde trabalhamos com uma plataforma de e-commerce (SAP Hybris), são projetos enormes!

Executei o seguinte comando para achar a quantidade de arquivos com a extensão .js no projeto

find PROJECT_NAME -type f -name "*.js" > ~/output.txt

Esse comando me retornou 1.567 arquivos, agora pare para pensar quantas linhas de código são?

Aqui na empresa nós usamos jQuery para fazer nossos códigos front-end, o que torna os scripts que escrevemos menores, e como é uma quantidade enorme de arquivos, para nós, vale a pena.

Agora pense uma simples página institucional, onde a única ação necessária é um alert ao clicar em um botão (exemplo hipotético, mas deu pra pegar..)?

Por isso basta colocar na balança.. Para projetos grandes, vale a pena o uso do jQuery sim, mas para projetos muito pequenos é interessante se considerar o uso de VanillaJS.

Não tem para que fazer seu usuário baixar mais código, sendo que o mesmo código reescrito em VanillaJS ficaria com poucas linhas.

Vale lembrar também, que se você está aprendendo ainda, é muito mais interessante aprender VanillaJS do que jQuery, como você deve saber, jQuery é apenas uma lib Javascript, ou seja, se você sabe Javascript, você sabe jQuery (basta aprender as funções), mas você sabendo jQuery não quer dizer que você saiba Javascript.

Deixo também este site aqui que é bem bacana, ele mostra funções jQuery e seus equivalentes em VanillaJS www.youmightnotneedjquery.com

Att.

Oi André, acredito que hoje em dia isso é possível sim. O jQuery era muito útil na época que era muito difícil escrever um código javascript que funcionasse em diferentes browsers, as vezes era necessário escrever várias vezes um código que faz uma mesma coisa, mas de uma forma um pouco diferente pra cada browser.

Hoje em dia, o javascript está bastante avançado em termos de compatibilidade e também de funcionalidade, dispensando o uso de bibliotecas como o jQuery.

Um exemplo disso é o site da alura ou da alurastart, nós escrevemos eles sem usar nada de jQuery.

Alura

Alura Start

Abraços!

solução!

Oi André,

Olha, no estado atual do Javascript , é possível sim fazer muito do que o jQuery nos ajuda com apenas o Javascript puro.

Posso dizer até que era um tendência recente dos desenvolvedores reduzirem o número de bibliotecas externas do seus projetos e tentar ao máximo utilizar a linguagem em sua forma pura, pensando até pelo lado da perfomance , já que o jQuery bem ou mal adiciona pelo menos uns 31Kb em sua forma Gzipped.

E existe até um site conhecido pela comunidade, que é o http://youmightnotneedjquery.com/ que demonstra como utilizar o Javascript puro para realizar diversas funções que o jQuery trás para gente.

Mas como instrutor deste curso e como alguém que já fez muito uso dessa biblioteca profissionalmente, também tenho que olhar pelo outro lado da moeda. Se você reparar no site que eu citei acima, todos os exemplos com Javascript puro requerem que você escreva bem mais código, e que você tenha um conhecimento bem avançado de como a Web, os navegadores e o próprio Javascript funciona a fundo.

Os problemas de compatibilidade entre navegadores também são mais raros de se encontrar nas versões mais modernas do mesmo, porém se você algum dia precisar dar suporte a navegadores antigos, a versão 2 do jQuery tem mais de 105 workarounds documentados pela comunidade que mantêm a biblioteca sobre pequenos problemas e incompatibilidade que foram resolvidos ao longo dos anos.

E sobre a questão de performance , o número de requisições HTTP importa muito mais do que o peso do arquivo.

E se mesmo assim você ainda estiver preocupado com os 31Kb do jQuery, um tópico que não abordei no curso por ser extremamente específico e um pouco avançado, é que o jQuery pode ser modularizado! Ou seja, se você não usa as funções de Ajax do mesmo, você pode gerar a sua própria versão do jQuery sem as funções de Ajax, deixando o arquivo final mais leve ainda!

Então, concluindo, dá sim para não usar jQuery hoje dia, mas tem que ser muito safo no Javascript e não podemos desmerecer totalemente essa biblioteca que faz muita coisa pela a gente :)

Primeiramente, obrigado por compartilharem suas ideias, foram muito esclarecedoras e acrescentaram muito para o meu crescimento como desenvolvedor.

Wagner, procurei primeiro aprender como programar em Javascript com livros; sobre Javascript e apps em HTML5; também fiz alguns cursos aqui na Alura mesmo e estou me aprofundando aos poucos a cada dia. Achei muito interessante seu comentário e valeu mesmo pelas dicas! Se quiser, pode "despejar" mais dicas ai! =)

Com certeza sua resposta foi bem completa Douglas. Gosto muito das suas aulas e pedi sua opinião porque sei que você e o Diego Eis são "fodões" na área e com certeza ter a opinião dos dois me ajudaria muito a entender o contexto de uso do JQuery. Não sei se você já tem algum livro escrito, mas se tiver me passa o link que vou lá comprar! E parabéns pelas aulas, são excelentes!

E Philippe, sempre procuro entender como os top desenvolvedores como vocês trabalham e desenvolvem suas páginas. Você comentou que a Alura e a Alura Start foram desenvolvidos sem usar o JQuery. O que levou vocês a não usarem o JQuery nesses sites, que pra mim são grandes projetos. Como vocês driblaram problemas com tamanho do código e performance do site?

Opa André! Só pra esclarecer uma coisa, quando eu disse que a Alura e a Alura Start são feitos sem jQuery, eu quis dizer o site de vendas, que é um sistema diferente do qual está o fórum, as aulas etc.

Na plataforma interna, bem mais complexa que o site de vendas, nós usamos sim jQuery.

O que nos levou à decisão de não usar jQuery é a performance, nós queríamos o mínimo de javascript possível para o site rodar e também evitar carregar bibliotecas mais pesadas sendo que precisaríamos usar pouco javascript.

Abraços!