Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Nós precisamos falar sobre o jQuery

Nós precisamos falar sobre o jQuery

Vinícius Almeida

September 19, 2015
Tweet

More Decks by Vinícius Almeida

Other Decks in Programming

Transcript

  1. Isso não é sobre ficar na zona de conforto. É

    sobre ter uma visão pragmática em relação ao assunto. @vimoding
  2. A idéia é propor uma visão menos passional dos assuntos

    vinculados ao frontend em geral. @vimoding
  3. 1: Eu preciso de uma SPA e a jQuery não

    foi feita pra isso. Logo, ela não vai me ajudar. @vimoding
  4. Receber um HTML pronto do servidor e enviar dados utilizando

    formulários nunca será uma má idéia. — Jean Carlo Emer. @vimoding
  5. Botar os pés no chão é difícil. Eu sei. Mas

    a falha de julgamento nessas situações são um prato cheio para over engineering @vimoding
  6. 2: A jQuery é muito pesada. Principalmente por conta do

    suporte aos browsers antigos. @vimoding
  7. Esse é o calcanhar de Aquiles da jQuery Mas a

    versão 2 da biblioteca já indica um movimento @vimoding
  8. Veja bem, em nenhuma das situações o approach com jQuery

    foi mais pesado do que os demais @vimoding
  9. Pois saiba que ainda temos alternativas Outras bibliotecas como a

    Zepto provêem uma API “largamente compatível” com a do jQuery pesando apenas 25K @vimoding
  10. A API de acesso ao DOM de fato melhorou muito

    tendo em vista um passado não muito distante @vimoding
  11. We want to have as much time as we can

    for the challenging tasks — Yehuda Katz @vimoding
  12. You need jQuery in many cases. Feel free to re-

    create it if you can. But please stop advertising to not use it — Anselm Hannemann @vimoding
  13. A jQuery foi amplamente aplicada durante anos Segundo a Wikipédia,

    ela está presente em 77% dos 10 mil sites mais visitados do mundo @vimoding
  14. O fato é que a forma de se escrever código

    com jQuery é muito sólida @vimoding
  15. Mas cuidado com os gotchas O jQuery way pode não

    corresponder ao nível desejado para a sua aplicação @vimoding
  16. Forma padrão de se inicializar um plugin/componente $(document).ready(function() { $('#any-selector').hypotheticPlugin({

    firstProperty: foo, anotherProperty: bar }); }); Essa é a pior das convenções do jQuery way @vimoding
  17. O markup Declarando tudo o que é necessário <div data-jquery-component="hypotheticComponent"

    data-first-property="foo" data-second-property="bar"> </div> @vimoding
  18. O código JS Utilizando o .data() com maestria $('[data-jquery-component]').each(function(_i, el)

    { var $currentElement = $(el); var options = $currentElement.data(); $currentElement[options.jqueryComponent](options); }); @vimoding
  19. Estender a API é fácil Isso é perfeitamente viável para

    um desenvolvedor de qualquer nível @vimoding
  20. ! O jQuery é a melhor opção na ampla maioria

    dos casos ! Relembrando o disclaimer: Isso não tem a ver com ficar parado no tempo ou estagnado. É tudo uma questão de entendimento do contexto @vimoding
  21. E é o contexto que deve motivar as decisões. E

    não as tendências. @vimoding