UPDATE:2022.12.1
- CATEGORY
WEBサイト制作者なら知っておきたいjQueryのメリットとデメリットの話
Contents
「jQuery」のメリット
・コーディングの難易度が下がる
jQueryのコードはバニラJavaScriptと比較すると非常にシンプルです。そのため学習が容易で、すぐにコードに慣れることができるでしょう。
・コーディング時間の短縮
簡単な記述でコードが書けるのでコーディングの時間短縮になります。また、シンプルであるためコードの可読性も高いです。
・ブラウザ毎の挙動の違いを吸収する
ブラウザの仕様の差異が原因で発生する挙動の違いをjQueryを利用することで解決できます。(ただしIE11のサポートが終了した現在、この点はそこまでのメリットにはならないのではないかと個人的には感じます。)
以上が主な「jQuery」のメリットです。
では反対に「jQuery」のデメリットは何でしょうか?
「jQuery」のデメリット
・動作が遅くなる可能性がある
jQueryは汎用性の高さが売りですが、汎用性の高さゆえに不要なコードが多いです。複雑な処理でないのならバニラのJavaScriptで実装した方が無駄が少ないでしょう。
・バージョンアップ作業が大変
やや語弊のある言い方ですが、古いバージョンのjQueryを新しいバージョンのjQueryにアップデートするとき、その作業が思いもよらず大変になる場合があります。まずjQueryはバージョンごとに仕様の違いがあります。
jQueryの変更自体はコードを一行書き換えるだけで終わるのですが、
その他のjQueryに依存したコードがバージョンアップ後のjQueryに対応していない、
または仕様が異なる場合にはサイトで不具合が発生します。
それらの不具合を一つずつ解消していくのは結構骨の折れる作業です。
実際、直近の案件でも過去に実装した古いjQuery関連のコードに不具合が発生し、
原因の特定と修正に時間がかかった…ということがありました。
古いままのjQueryはセキュリティの脆弱性が指摘されていますし、
可能であればバージョンアップを行った方がいいでしょう。
しかし前述したとおりjQueryはバージョンアップを行うと不具合が出ることも想定され、
付随して修正作業が発生するケースも少なくありません。
また、ホームページが古い場合はサイトを構築した担当者が退職などの理由でいないこともあり、
その場合に何のプラグインがjQueryに依存して使われているのかわからないという事態も。
こうなるとjQueryに関わる不具合の修正はさらに大変になります。
・コピペでコーディング出来てしまう
jQueryは便利ではありますが、参考になるコードが世にあふれているのでコピペだけでコーディングを行うことも可能です。あなたは何も理解していないままコピペでjQueryのコードを利用していませんか?
jQueryのバージョンアップなどで不具合が出たときに対処できるよう、
基本のJavasScriptに関する知識も学んでおいた方がいいかも知れません。
まとめ
jQueryのメリットとデメリットを比較したとき、私はデメリットの方が大きいと感じました。とくにjQuery由来の不具合への対応は大きなデメリットになると考えています。
(突発的な不具合への対応がコーダー陣の制作作業を遅らせる一つの要因となっています。突如発生する不具合は原因不明なことも多いですが、バージョンアップによる不具合も含まれているでしょう)
JavasScriptの知識があればjQueryで不具合が発生しても対応ができますし、
そういう意味でもやはり基本はJavasScriptを中心に使っていきたいところですね。