最新のWebキットのみのWebアプリケーションでjQueryを使用することには意味がありますか?


9

最近、Android(2.3以降)およびiOS(4以降)用のいくつかのモバイルWebアプリに取り組んでいます。彼らのブラウザは非常に強力なECMAScript5のほとんどをサポートしており、必要なときにだけjQueryを使用して、可能な限り言語機能を使用したいと考えていました。

私がjQueryを使用する唯一のことは、のより短い代替手段を持つことですdocument.querySelectorAll。それも取り除くかもしれません。

最新のWebKitブラウザーのみをサポートする必要がある場合、jQuery(および他の汎用ライブラリー)を取り除くことは良い考えですか?結局のところ、これらは間接的なレイヤーです。

(これまでのところ、アプリはAJAX呼び出しを行う必要はありません。これは醜くなりそうなことの1つだと思います。しかし、そのためだけにjQueryを維持する価値はありますか?)


1
関連:gist.github.com/1455456 ;)XHRの場合、このヘルパーをお勧めします。それはあなたの答えにはなりませんが、私の得点はわかります。
Florian Margaine、2012年

回答:


8

いいえ、意味がありません。

jQueryは肥大化したライブラリです。誰もがそれを知っています。そして、誰もがそれを使用しているのは、それが機能する珍しいクロスブラウザライブラリの1つだからです(私がフレームワークとは言っていないことに注意してください)。

レガシーブラウザのサポートが必要ない場合は、jQueryは必要ありません。

QSAショートカットやXHRヘルパーなどの小さなニーズは薄いです。それらはそのような オブジェクトを通して簡単に追加されます

次に、そのAPIが気に入ったら、それを試してください。しかし、それは必要ありません。

一部の人々が好むことを理解できます:

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

宛先(Byを使用):

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

私は2番目の方法の方がより明白であると思いますが、他の人は反対します。それは好みの問題です。

また、コードがレガシーブラウザ(または他の非Webkit / suckyモバイルブラウザ)に移植される可能性がある場合は、jQueryを使用します。後で頭痛が減ります。

関連:https : //softwareengineering.stackexchange.com/a/148536/42132


3
これを25回行った場合はどうなりますか(addClass x25ではなく、他にも同様のケースがたくさんあります)。読み取るコードが非常に多くなるため、読み取りはますます難しくなります。
エサイリヤ2012年

私はそれを読むのが難しいとは思わない、私はそれがより明白であると思う。好みの問題。
Florian Margaine、2012年

3
レガシーブラウザのサポート以外にも、jQueryを使用する理由はたくさんあると思います。非常に主観的であり、事実ではなく好みに基づいていると思われるこの回答の意見には同意しません。
マイケルデュラント

@MichaelDurrantはい、そのAPIのjQueryの使用は非常に主観的であり、好みに基づいています。これは私がこの答えで言ったことです。
Florian Margaine、2012年

「誰もがそれを知っている」-うーん、これは反論を思いとどまらせるようです。jQueryのは、値がたくさんあります。decadecity.net/talks/what-has-jquery-ever-done-for-us
エリアス

8

まだ使う価値があると思います。jQueryは効果的にコードをよりコンパクトで読みやすくし、開発を迅速化し、メンテナンスを減らします(ある程度の経験があることを考慮に入れてください)。

jQueryが重すぎる場合は、Zeptoを試してみてください。これは、jQueryの軽量な代替手段(類似のAPIを使用)の一種です。


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.