2021年01月07日記載
世の中は脱jQueryらしい、けどそんな意見は無視してOK
2021年に入り、Web界隈の先端を走るプロたちからみるフロントエンドエンジニアの世界では、jQueryはオワコンで、これからはVueやReactが主流になるとの思想が強まっている。

もし私がすでにネイティブなJavaScriptもそれなりにソースコードを書けるスキルがあって、且つブラウザ依存差を吸収させるためにjQueryも多様してきた経験豊富なエンジニアなら同じことを言っていただろう。

私はWebの世界はインターネットが世の普及し始めた1997年からと世間より経験値は長い。てもこれまでのノウハウはLinuxサーバ環境設定だったり、静的なホームページの制作程度であって自在に動的ページまで作れるようになったのは直近の5年である。いわゆるWeb系エンジニアとしてのスキルは初心者に毛の生えたレベルでしかない。

ましてフロントエンド系ともなれば、一般的なCSSが書ける程度であって、動的で高度な演出まで行う最先端CSSはもちろん書けないし、最近流行っているCSSフレームワークであるSCSSとか、ネイティブなフロント言語のJavasScriptも、今ですらほとんど自分で書くことができない。

これまでのWeb開発においてどうしてもフロントエンドで演出しなければならない部分はネット検索して掲載されているコードを内容も理解せずにコピペでなんとか動かしてきた程度のスキルしかなく、ずっとごまかしながら耐えてきた。

実際に実装してきたフロントエンド技術を列記してみるとこんな機能だ。

(1)部分的なHTMLの表示、非表示切り替え
(2)CSSの部分書き換え
(3)アラートダイアログ表示
(4)日付カレンダー入力
(5)ページ上部へのスクロール移動
(6)ドラッグアンドドロップを使った複数選択
(7)ドラッグアンドドロップを使ったデータ並べ替え
(8)小ウインドウ表示とクローズ処理
(9)非同期通信

これらはすべてjQueryさえあれば全部実現できる機能郡である。最も使うのは(1)でDOM操作と言われている。シンプルなDOM操作だけならjQuery一発で簡単に実現できる。

同様の延長線で(2)も簡単に書けてしまうし、CSSの書き換えが簡単1行コードで書けてしまうjQueryは初心者にとって強烈に心強い存在といっていい。

簡単と書けると言っているものの、これまでの私はシンプルなDOM操作ですらきちん理解せずに実装してきた。

年末年始の時間を使ってVueの解説書を読んでトライしたが挫折し、改めてjQueryをきちんと再整理したら、なんとなく書いてきた内容が明確になり、どこからのソースをコピペせずに自分の中で描いた演出どおりに動かせるまでになった。

これからも業務系のWebアプリ開発をする場合、先に書いた9項目が使えれば、よほど特別なUIを演出でなければならないシチュエーションが来ない限り、jQueryさえあればなんとなるし、問題ないと判断している。

脱jQueryを主張する人たちの意見を見てみると、だいたいこんな意見が多い。

・jQueryで大掛かりな動作をさせるとコードが汚くなる
・チーム開発には向かない
・SPA開発には不適合
・ブラウザ差を気にする時代は終わった
・そもそもjQuery開発者がReactを使っている

こんな意見である。

もし私がバリバリの先端エンジニアなら納得できるし、すでにReactの達人になっていると思うが、実際の私は個人開発専門の素人開発レベルであって、率直な感想を言わせてもらえば、こうしたプロたちの主張に従う必要はどこにもなく、最も大事な要素である「顧客ニーズを満たせるWebシステム」を作るだけなら、jQueryだけで十分問題ないと断言したい。

ぶっちゃけVueやReactの勉強はいつだって始められる。慌てる必要はどこにもない。JavaScriptを何も見ずに簡単な動作ができるレベルに達してから、改めて脱jQueryを検討しても良いのではないか。

もしあなたがこれからエンジニアを目指して、且つ企業に就職を目指すのなら、私のような考え方は間違っているけれども、個人開発が主体で自分が作りたいものを作る環境であるなら、プロたちの意見は参考程度にして、本来の目的であるニーズに応えられるWebシステム開発の達成の実現への最短コースがなんであるかを見極めたほうが良いというのが私の考え方である。

なぜなら顧客にとって、目の前にあるWebシステムが、どんな言語で可読性の高いキレイなコードで書かれているかなんてどうでも良く、操作しやすいUIで、期待されるフロントエンド動作が実現できれば問題ないからだ。

学習コストが最も低いのが最大メリットであるjQuery。プログラミングの勉強において、自分で動かせる喜びをすぐに実感できる手軽さは、ReactやVueにはない世界感がjQueryにある。

脱jQuery?クソくらえである。
コラムワード検索
表示件数
ワード検索
本コラムに関する意見
Twitterにて受け付けます @megahit_jp