6 pontos por GN⁺ 2024-04-19 | 3 comentários | Compartilhar no WhatsApp
  • A influência do jQuery na web é evidente
    • Desde que foi apresentado pela primeira vez em 2006, tornou-se imediatamente uma ferramenta padrão para desenvolvedores web
    • Simplificou a manipulação de documentos HTML, o tratamento de eventos, animações e muito mais
    • Também teve um papel importante e contínuo na evolução dos padrões web e dos recursos dos navegadores
  • Com o surgimento dos frameworks JavaScript mais recentes, diminuiu o número de desenvolvedores que escolhem jQuery para novos projetos, mas o uso global ainda continua muito alto
    • Segundo a análise dos resultados de uma pesquisa da IDC, 90% de todos os sites usam jQuery
    • Desses, cerca de 1/3 usa versões antigas
  • A equipe do jQuery e a OpenJS Foundation estão trabalhando para resolver isso como parte da campanha Healthy Web checkup
    • Este guia explica por que é importante manter a versão do jQuery atualizada e orienta o processo de upgrade

Por que o upgrade do jQuery é importante para a segurança

  • Vulnerabilidades de segurança
    • O código-base do jQuery pode ter várias vulnerabilidades, de XSS a RCE
    • Sempre que são descobertas, a equipe do jQuery fornece patches e atualizações
    • Ao fazer upgrade para a versão mais recente, essas correções de segurança são aplicadas, reduzindo o risco de exploração por atacantes
  • Boas práticas de segurança
    • As novas versões do jQuery incorporam boas práticas e melhorias de segurança para mitigar ameaças comuns
    • Ao atualizar, é possível adotar essas práticas e fortalecer a postura de segurança da aplicação
  • Requisitos de conformidade
    • Muitos setores e frameworks regulatórios exigem manter o software atualizado e corrigir rapidamente vulnerabilidades de segurança conhecidas
    • Se você não resolver os problemas de segurança fazendo upgrade do jQuery, pode acabar em não conformidade com esses requisitos

Suporte a navegadores

  • jQuery 1.x, 2.x e 3.x têm listas diferentes de navegadores suportados
    • No entanto, considerando o uso atual do mercado de navegadores, os navegadores suportados pelo jQuery 3.x, como IE 9+, são suficientes em quase todos os casos
    • O jQuery 4.x continuará oferecendo suporte ao IE11, apesar de a Microsoft já ter anunciado o fim do suporte oficial

Como fazer upgrade do jQuery

  • A equipe do jQuery fornece o plugin jQuery Migrate para tornar o upgrade o mais fácil possível
    • É uma ferramenta de desenvolvimento que gera mensagens de aviso no console do navegador para ajudar a identificar e corrigir problemas de compatibilidade
    • Ele restaura temporariamente recursos e comportamentos descontinuados para que o código antigo continue funcionando nas novas versões do jQuery enquanto você corrige os problemas de compatibilidade
  • O jQuery Migrate tem duas versões, 1.x e 3.x (não existe 2.x)
    • Deve-se usar apenas uma versão por vez
    • Se o upgrade estiver sendo feito a partir de uma versão anterior ao jQuery 1.9, talvez seja necessário usar as duas versões em sequência
  • Por exemplo, se a versão atual do jQuery for 1.4.4
    • Primeiro, faça o upgrade para jQuery 1.12.4 usando o jQuery Migrate 1.x e, em seguida,
    • use o jQuery Migrate 3.x para fazer upgrade para o jQuery mais recente (3.7.1 no momento)
    • Se a versão atual for 2.2.4, é possível fazer upgrade para o jQuery mais recente usando apenas o jQuery Migrate 3.x

Como usar o jQuery Migrate

  • Primeiro, adicione o jQuery Migrate à página depois de carregar o jQuery
  
  
  • Em seguida, teste o site ou a aplicação
    • Quando diferentes APIs do jQuery forem usadas, o jQuery Migrate registrará mensagens de aviso no console sobre itens descontinuados ou mudanças significativas
    • Resolva cada aviso, um de cada vez
  • Por fim, quando não houver mais avisos no console e todas as mudanças significativas tiverem sido resolvidas, remova o jQuery Migrate e a migração estará concluída
    • Para mais detalhes, consulte o README do jQuery Migrate

Guias de upgrade do jQuery

  • Os jQuery Upgrade Guides podem ser úteis se você quiser informações detalhadas sobre mudanças significativas ou ver a lista completa dessas mudanças em cada versão
  • Os guias de upgrade do jQuery 1.9, 3.0 e 3.5 listam todas as mudanças significativas ocorridas em cada release
  • A maioria das mudanças significativas listadas provavelmente não se aplicará ao seu código, mas esses guias acrescentam contexto e explicações para cada mudança

Observações sobre futuras versões do jQuery

  • O jQuery 4.0 está se aproximando, então você pode estar se perguntando como será o processo de upgrade para o jQuery 4.x
    • A resposta é: igual ao upgrade para o jQuery 3.x, e pode ser feito em uma única etapa
    • Ou seja, não é necessário fazer upgrade para o jQuery 3.x antes de migrar para o jQuery 4.x
    • É possível fazer upgrade diretamente do jQuery 1.9+ para o jQuery 4.x
    • Também está previsto um guia de upgrade para o jQuery 4.0

Opinião do GN⁺

  • Como o jQuery ainda é muito usado em muitos sites, o upgrade de versão continua sendo uma tarefa importante para desenvolvedores web
    • Se versões antigas continuarem em uso, elas podem permanecer expostas a vulnerabilidades recém-descobertas e também apresentar problemas de desempenho
  • No entanto, no caso de sistemas legados que usam versões antigas do jQuery, o upgrade pode consumir tempo e custo consideráveis
    • Nesses casos, reduzir o risco com medidas como aplicar apenas patches de segurança também pode ser uma abordagem válida
  • Com o uso do plugin Migrate e afins, o upgrade pode ser facilitado, mas ainda pode haver problemas de compatibilidade
    • Isso tende a ser ainda mais provável em código legado com forte dependência de jQuery
    • Para resolver isso, é necessária uma migração gradual
  • Em projetos novos, pode ser vantajoso já projetar sem dependência de jQuery
    • Usar Vanilla JS ou frameworks frontend modernos é uma abordagem mais voltada para o futuro
  • Para desenvolvedores que vinham usando jQuery, esta também pode ser uma boa oportunidade para experimentar novas tecnologias e ampliar suas competências

3 comentários

 
[Este comentário foi ocultado.]
 
[Este comentário foi ocultado.]
 
kandk 2024-04-19

Se você não atualizar o jQuery ou corrigir os problemas de segurança