Czy sensowne jest używanie jQuery w aplikacjach webowych wyposażonych tylko w nowoczesny zestaw webkit?

9

Ostatnio pracuję nad kilkoma mobilnymi aplikacjami internetowymi na Androida (2.3+) i iOS (4+). Ich przeglądarki obsługują większość ECMAScript5, który jest bardzo wydajny, i chciałem korzystać z funkcji językowych tam, gdzie to możliwe, uciekając się do jQuery tylko wtedy, gdy musiałem.

Okazuje się, że jedyną rzeczą, dla której używam jQuery, jest krótsza alternatywa document.querySelectorAll. Równie dobrze mogę się go pozbyć.

Jeśli muszę obsługiwać tylko nowoczesne przeglądarki WebKit, czy warto pozbyć się jQuery (i innych bibliotek ogólnego przeznaczenia)? W końcu stanowią warstwę pośrednią.

(Aplikacje nie muszą do tej pory wykonywać połączeń AJAX, chyba jedna rzecz będzie brzydka. Ale czy warto zachować jQuery tylko po to?)

futlib
źródło
1
Powiązane: gist.github.com/1455456 ;) W przypadku XHR proponuję ci tego pomocnika . Nie odpowiada ci, ale rozumiesz.
Florian Margaine

Odpowiedzi:

8

Nie, to nie ma sensu.

jQuery jest rozdętą biblioteką. Wszyscy to wiedzą. I wszyscy go używają, ponieważ jest to jedna z rzadkich bibliotek działających w różnych przeglądarkach , które po prostu działają (zauważ, że nie powiedziałem frameworku ).

Jeśli nie potrzebujesz obsługi starszych przeglądarek, nie potrzebujesz jQuery.

Małe potrzeby, takie jak skrót QSA lub pomocnik XHR, są niewielkie . Można je łatwo dodawać poprzez takie obiekty .

Następnie, jeśli podoba Ci się jego interfejs API, wybierz go. Ale to nie jest potrzebne.

Rozumiem, że niektórzy ludzie wolą:

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

Aby (używając By ):

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

Uważam, że drugi sposób jest bardziej wyraźny, inni się nie zgodzą. To kwestia preferencji.

Ponadto, jeśli Twój kod ma szansę zostać później przeniesiony do starszych przeglądarek (lub innych przeglądarek mobilnych innych niż Webkit / Sucky), użyj jQuery. Zmniejszy to później ból głowy.

Powiązane: https://softwareengineering.stackexchange.com/a/148536/42132

Florian Margaine
źródło
3
Co jeśli zrobiłeś to 25 razy (nie dodawaj klasy x25, ale istnieje mnóstwo innych podobnych przypadków)? Jest coraz trudniej czytać, ponieważ jest o wiele więcej kodu do odczytania.
Esailija,
Nie jest mi trudniej czytać, uważam, że jest bardziej wyraźny. Sprawa preferencji.
Florian Margaine
3
Wydaje mi się, że istnieje wiele innych powodów, dla których warto używać jQuery poza obsługą starszych przeglądarek. Nie zgadzam się z opiniami tej odpowiedzi, które wydają się niezwykle subiektywne i oparte raczej na preferencjach niż na faktach.
Michael Durrant
@MichaelDurrant tak, korzystanie z API przez jQuery jest niezwykle subiektywne i oparte na preferencjach. Tak powiedziałem w tej odpowiedzi.
Florian Margaine
„Wszyscy to wiedzą” - hmm, to wydaje się zniechęcać do kontrargumentów. jQuery ma wiele zalet
elias
8

Myślę, że nadal warto go używać. jQuery skutecznie sprawia, że ​​Twój kod jest bardziej kompaktowy i czytelny, co powoduje szybsze tworzenie i mniejszą konserwację (biorąc pod uwagę, że masz z tym pewne doświadczenie).

Jeśli jQuery jest dla ciebie zbyt ciężki, powinieneś spróbować Zepto , co jest lekką alternatywą dla jQuery (z podobnym API).

Oliver Weiler
źródło