Имеет ли смысл использовать jQuery в современных веб-приложениях только для webkit?

9

В последнее время я работаю над несколькими мобильными веб-приложениями для Android (2.3+) и iOS (4+). Их браузеры поддерживают большую часть ECMAScript5, который является очень мощным, и я хотел использовать языковые функции там, где это возможно, прибегая к jQuery только тогда, когда мне было нужно.

Оказывается, единственное, для чего я использую jQuery - это иметь более короткую альтернативу document.querySelectorAll. С таким же успехом можно избавиться от этого.

Если мне нужно только поддерживать современные браузеры WebKit, будет ли хорошей идеей избавиться от jQuery (и других библиотек общего назначения)? В конце концов, это слой косвенности.

(Приложениям пока не нужно совершать AJAX-вызовы, я думаю, это одна вещь, которая может стать уродливой. Но стоит ли сохранять jQuery только для этого?)

futlib
источник
1
Related: gist.github.com/1455456 ;) Для XHR я бы предложил вам этого помощника . Это не отвечает вам, но вы поняли мою точку зрения.
Флориан Маргейн

Ответы:

8

Нет, это не имеет смысла.

jQuery - раздутая библиотека. Все это знают. И все используют его, потому что это одна из редких кросс-браузерных библиотек , которые просто работают (обратите внимание, что я не сказал, фреймворк ).

Если вам не нужна поддержка устаревших браузеров, вам не нужен jQuery.

Малые потребности , такие , как QSA ярлык или XHR помощник являются тонкими . Они легко добавляются через такие объекты .

Тогда, если вам нравится его API, сделайте это. Но это не нужно.

Я могу понять, что некоторые люди предпочитают:

$( '.table' ).addClass( 'active' );

Чтобы (используя By ):

[].forEach.call( By.qsa( '.table' ), function( table ) {
    table.classList.add( 'active' );
} );

Я считаю второй способ более явным, другие не согласятся. Это вопрос предпочтений.

Кроме того, если ваш код может быть перенесен в устаревшие браузеры позже (или другие мобильные браузеры, не относящиеся к webkit / sucky), используйте jQuery. Это уменьшит вашу головную боль позже.

Связанный: https://softwareengineering.stackexchange.com/a/148536/42132

Флориан Маргейн
источник
3
Что делать, если вы сделали это 25 раз (не addClass x25, но есть множество других подобных случаев)? Его становится все труднее и труднее читать, потому что кода для чтения намного больше.
Esailija
Мне не трудно читать, я нахожу это более явным. Дело предпочтения.
Флориан Маргейн
3
Я чувствую, что есть много других причин использовать jQuery, кроме поддержки устаревших браузеров. Я не согласен с мнением этого ответа, которое кажется чрезвычайно субъективным и основано на предпочтениях, а не на фактах.
Майкл Даррант
@MichaelDurrant да, использование jQuery его API чрезвычайно субъективно и основано на предпочтениях. Что я и сказал в этом ответе.
Флориан Маргейн
«Все знают это» - хм, это, кажется, обескураживает контраргументы. JQuery имеет большое значение: decadecity.net/talks/what-has-jquery-ever-done-for-us
Элиас
8

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

Если jQuery слишком тяжел для вас, вы должны попробовать Zepto , что является легкой альтернативой для jQuery (с похожим API).

Оливер Вейлер
источник
0

Я бы сказал, когда вы не знаете, что делать, просто используйте jQuery.

JQuery имеет большое значение, обрабатывает крайние случаи и избегает головной боли для вас: https://decadecity.net/talks/what-has-jquery-ever-done-for-us

Использование jQuery стоит на плечах гигантов.

Элиас
источник