Когда JQUERY был выпущен в 2006 году, произошел сейсмический сдвиг в веб -разработке. Интерактивный веб -опыт, который был слишком трудным для создания из -за несоответствий браузера и ограниченного API JavaScript, внезапно находился в пределах досягаемости типичных веб -разработчиков.
В прошедшие годы JavaScript стал много Более мощные и современные реактивные рамки, такие как Angular, React, Ember, Vue и Svelte, стали доминировать на ландшафте веб -приложений. В результате этого сдвига стало любимым времяпрепровождением некоторых разработчиков, чтобы рассказать мусор о jQuery и Flex о том, насколько лучше они развиваются, чтобы не использовать его.
jQuery по -прежнему имеет место в веб -разработке в 2020 году. Я хочу пройти через некоторые из общих аргументов, которые я слышу против jQuery и обратиться к ним один за другим:
«jQuery – раздутая зависимость»
jQuery это Зависимость, но я не убежден, что она раздута. Многие разработчики любят выстрекать в килобиты, потому что они измеримы: они видят небольшой размер страницы как осязаемую метрику для измерения себя как разработчика. Конечно, это требует Настоящий профессионал Чтобы получить время загрузки страницы на 40 мс! Однако только потому, что это измеримо, не означает, что это важно.
Скорость итерапии и обслуживаемость итерации гораздо важнее для долгосрочного успеха проекта, чем нагрузки на быстрые страницы. Плохо документированные вспомогательные функции, которые разработчик написал, чтобы не допустить, чтобы JQuery из своего проекта укусил их, когда они на борту новых разработчиков позже. У JQuery более десяти лет ответов на переполнение стека и невероятно хорошо документирована.
Ультра быстрые веб-страницы имеют решающее значение только в нескольких случаях, таких как электронная коммерция и целевые страницы для генерации свинца. Сохранение 30 КБ JavaScript, вероятно, не повлияет на результаты на веб-сайте местной некоммерческой организации.
Не позволяйте поиску производительности сбросить вас от доставки проекта: преждевременная оптимизация – это корень всего зла в информатике.
“jQuery ведет к коду спагетти”
Vanilla JavaScript также не имеет ответа на проблему кода спагетти: в равной степени неопухолевый.
Лучший способ избежать написания кода спагетти в jQuery – это не писать код спагетти. Для совета о том, как это сделать, проверьте Обучение шаблонов дизайна JavaScript от Addy Osmani (Эта ссылка имеет всю книгу бесплатно). Ваш код не должен быть бесконечной стеной обработчиков событий jQuery, вы можете построить лучшие примитивы поверх него, создавая классы или функции, которые называют ваш код jQuery.
«Vanilla JavaScript может сделать все, что может сделать jQuery!»
Может, хотя? Ванильный JavaScript не имеет ответа на $ ('. Accordion-item'). slidetoggle ()
Анкет Такие виды анимации удивительно трудно достичь гибко с CSS и усложняются для кодирования себя в JavaScript.
Если мне все равно нужно достать библиотеку, чтобы сделать это, почему бы не достичь того, у которого есть все преимущества, которые предоставляет jQuery?
“Просто используйте React”
Если вы строите приложение , React имеет большой смысл, но если вы создаете сайт, управляемый контентом с умеренной интерактивностью, вы много сдаетесь, переключившись на React.
Большинство приложений React в конечном итоге становятся одностраничными приложениями, что означает, что вы отказываетесь от рендеринга на стороне сервера и хорошего количества вашего потенциального SEO-сока. Вы также представили шаг сборки, который потенциально открывает вас для бодрствующего кошмара необходимости настроить WebPack.
React/Vue/Svelte также не играет хорошо с богатством ванильных библиотек JS и компонентов JQuery, таких как Flickity, изотоп, гладкая карусель и сотня. Вы можете заставить их работать, но это дополнительные усилия, когда вы можете просто бесплатно получить его в jQuery.
Библиотеки реактивного фронта также являются основным сдвигом парадигмы: если вы использовали ванильный JS или JQUERY поверх HTML для создания вашего приложения, вам, вероятно, нужно переписать все это.
Чаще всего я слышу это трудоемкое решение, потому что «jQuery старый».
Заключительные мысли
Отношение, которые многие разработчики показывают к jQuery, являются исключительными и бесполезными. Они выводят разработчиков из поля, потому что им говорят, что они не «настоящие разработчики» из -за инструментов, которые они используют. Эти взгляды заставляют любителей беспокойства об участии в нашем сообществе. И, как правило, эти взгляды являются огромным обломом.
Вы можете построить удивительный опыт в ванили JS. Вы можете построить удивительный опыт в React. И да, вы можете построить удивительный опыт в jQuery. Будь добрым.
Оригинал: “https://dev.to/tylerlwsmith/hating-jquery-doesn-t-make-you-cool-1fbk”