Чрезмерное использование jquery - PullRequest
9 голосов
/ 19 октября 2010

При использовании фреймворка javascript, такого как jquery, существует ли реальная возможность чрезмерного использования библиотеки для вещей, которые можно сделать простым простым старым javascript.

Если так, то это делает:

A: медленный код вниз
B: сделать код менее переносимым
C: Сделать программиста менее осведомленным о том, что на самом деле происходит под всем

Я думаю о таких вещах, как использование jquery .each вместо простого цикла for. Конечно, это добавляет немного кода, но затем его «настоящий» javascript, если вы понимаете, о чем я.

Может быть, я просто наивен.

Ответы [ 6 ]

7 голосов
/ 19 октября 2010

B) это делает код более переносимым, а не меньшим, потому что различия между браузерами обрабатываются реализацией платформы.

7 голосов
/ 19 октября 2010

Ну, я полагаю, есть шанс , но в целом преимущества намного превосходят недостатки.

В общем

а) это может немного замедлить код, если вы делаете что-то, что будет просто в чистом JS, но в большинстве случаев это все равно было оптимизировано в jQuery. С другой стороны, наивный способ сделать что-то сложное, вероятно, не так быстр, как это сделал бы Рейзиг с коллегами.

b) Это, безусловно, делает код менее переносимым в том смысле, что он будет зависеть от библиотек jQuery. С другой стороны, он будет более переносимым во всех браузерах и версиях, что является более важным фактором.

в) да, это может скрывать некоторую магию javascript. Мой опыт, однако, заключается в том, что в конечном итоге вам все равно придется выучить это; в то же время jQuery делает вашу работу намного продуктивнее, намного быстрее.

(Обратите также внимание, что эти пункты действительно применимы к большинству библиотек. JQuery - мой любимый, но я много пишу с dojo, и с удовольствием использовал prototype, scriptaculous и YUI.)

1 голос
/ 19 октября 2010

Действительно замечательная вещь в jquery состоит в том, что они уже разработали быстрый и плавный код, который помогает защитить вас от кросс-браузерной опасности.Итак, я уверен, что всем можно злоупотреблять, но преимущества знания того, что мой код с большей вероятностью поспевает за будущими изменениями браузера, просто обновляя API jquery, не беспокоясь о вашем устаревшем коде javascript, дают мне немного больше спокойствияразум.Это идеально?Noooooo.Но сейчас, это делает мою жизнь оооочень проще и сейчас, и в обозримом будущем.Если вы пишете «сырой» код только для javascript, то если один единственный браузер изменит способ обработки вашей ситуации, то это будет на один сегмент меньше пользователей, которые смогут эффективно просматривать ваш сайт.

1 голос
/ 19 октября 2010

Что касается медлительности, я бы подумал, что начальная загрузка jQuery затронет большую часть вашей функциональности.Если вы загружаете 20 плагинов, вы можете столкнуться с некоторыми проблемами.

jQuery не менее переносим, ​​чем любой другой файл JS.Тем более, если вы используете CDN.

Я склонен согласиться с третьим пунктом.Я больше не склонен возиться с большим количеством актуальных JS, я просто использую jQuery, чтобы делать все, в пределах разумного.

В целом, я думаю, что jQuery и другие библиотеки JS - это одна из лучших вещей, которая случится с веб-разработкой в ​​последниебит.

0 голосов
/ 19 октября 2010

Конечно, как и любая «новая» технология, она чрезмерно используется.То же самое относится и к вещам, таким как Linq или CSS-адаптеры для .NET.Правило: если вы можете сделать это простым и эффективным, сделайте это!

0 голосов
/ 19 октября 2010

Я полагаю, что если я собираюсь загрузить библиотеку на страницу, я могу использовать ее как можно чаще. Я пытаюсь получить удар за свой доллар (так сказать).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...