Прототип VS jQuery - Достоинства и недостатки?

Я не хочу открывать другой "еще один VS Js Js" поток.

Я предполагаю, в Прототипе конца и jQuery и JS и имеют почти те же методы и функции и нуждается почти в тех же строках кода для идентичных задач.

Для реального Богатого интернет-приложения, каковы реальные преимущества и что слабые места в Прототипе по сравнению с jQuery?

64
задан Rob W 28 December 2011 в 22:17
поделиться

6 ответов

Изначально мне понравилась идея расширения элементов Prototype с помощью новых или модифицированных методов.

Тем не менее, я обнаружил ряд причин, по которым это плохая вещь (TM)

Поищите в Google, и вы, вероятно, найдете другие причины, но основная причина в том, что прототип не может быть гарантирован. чтобы «поиграть» с другими фреймворками или библиотеками, поскольку другие библиотеки ожидают, что поведение элементов и методов будет «стандартным», и из-за того, что делает Prototype, вы можете обнаружить ряд вещей, которые он нарушает.

Самым последним примером, который я обнаружил, был Prototype, использующий JSON и преобразование строк. Я использовал EasyXDM, и он просто не работал в некоторых случаях, когда прототип.js библиотека была загружена. Поскольку я писал фреймворк для использования другими и, таким образом, не имел контроля над содержимым страницы, мне нужно было создать и сделать все в IFRAME, чтобы обеспечить такие вещи, как прототип. js не повредил тому, что я пытался сделать.

... так что jQuery выигрывает для меня, потому что я просто не считаю правильным, чтобы фреймворк автоматически сбивался со стандартным поведением DOM и javascript. ВЫ должны контролировать эти вещи, Prototype забирает у вас часть этого контроля ....

105
ответ дан 24 November 2019 в 15:37
поделиться

Я тоже использую jQuery вместо прототипа, просто посмотрите вверху этой страницы, чтобы узнать, почему:

Вопросы с тегами jquery : 531 752
вопрос с тегами прототипа : 2,465
Обновлено 22.09.2014, 14.12.2011 jQuery - 135 641 / прототип - 2327

jQuery - очень лаконичный код. Прототип я нахожу гораздо более подробным, хотя во многих областях функциональности он часто эквивалентен.Однако, если вам нужна помощь для начала работы, вам нужно более широкое сообщество. Больше поддержки, больше тех же вопросов, на которые вы уже ответили, и их легко погуглить, и больше плагинов, код, который вы, вероятно, ищете, чтобы что-то сделать ... уже написано.

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

Опять же ... по той же причине, что и размер сообщества, было обнаружено больше недостатков в структуре и заполнены пробелы, потому что более крупное сообщество внимательно его изучало. Это означает, что когда вы сталкиваетесь с проблемой, скорее всего, кто-то другой тоже это сделал, и был добавлен какой-то метод или опция, чтобы вы продолжали двигаться, а не застряли из-за того, что вы столкнулись с чем-то, что не может сделать фреймворк.

45
ответ дан 24 November 2019 в 15:37
поделиться

Я выбрал jQuery вместо Prototype, потому что:

  • «делай больше, пиши меньше ...»
  • сообщество jQuery больше (следовательно, дополнительные плагины и ресурсы)
9
ответ дан 24 November 2019 в 15:37
поделиться

Ни то, ни другое не является «лучшим». Все зависит от обстоятельств. Попробуйте оба варианта и посмотрите, какой из них вам больше нравится. Я лично использую JQuery из-за простоты использования по сравнению с прототипом, который является довольно продвинутым и требует более длительного обучения.

Взгляните на:

Прототип против JQuery (в Ajaxian)

4
ответ дан 24 November 2019 в 15:37
поделиться

В настоящее время я переписываю большие блоки приложения, чтобы перейти от Prototype к jQuery. Почему? Плагины, плагины, плагины, особенно виджеты пользовательского интерфейса. Элементы пользовательского интерфейса прототипа довольно фрагментированы и разрознены, в то время как jQuery имеет очень богатый набор «стандартных» элементов .

19
ответ дан 24 November 2019 в 15:37
поделиться

Это еще одна интересная статья о jQuery и MooTools (MooTools и Prototype в основном взаимозаменяемы, по крайней мере, в контексте этой дискуссии): http://jqueryvsmootools.com/

3
ответ дан 24 November 2019 в 15:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: