2021年01月02日記載
Vue.js3挫折、オワコンといわれようとjQueryで攻めます
年末年始の時間を利用してVue.js3の勉強をすると宣言した。が、年始早々だけれども勉強するのを辞めた。要するに「挫折」宣言である。3日坊主ではない。1週間坊主だ(苦笑)。

とまあ、偉そうに元旦記事で勉強すると宣言して翌日の記事で挫折宣言。情けない奴だと思った人も多いと思う。そう、私は根性なしの情けない負け犬である。

「Vue3.js3超入門」という名の参考書を買って1ページ目から順番どおり実践しながら読み進めていった。この本は2020年12月19日に発売されたばかりの超新作本である。最新の内容でもあり、気合を入れて購入、29日から読み始めた。ところが元旦の夜、頑張ろうとする気持ちがプッツリ切れ、嫌になった。これ以上頑張って読み進めていく気力がプッツリ切れたのだ。

なぜ嫌になったのか。

購入した入門書は、将来的に大規模なフロントエンド開発を目指す人にも満足させることをターゲットにしたストーリで書かれている本で、おそらく本気でVueの勉強を目指す人にとってはすばらしい本だと思っている。

しかし、私にはあわなかった。

この本に限らず、これまでのプログラミング系の書籍で挫折する本と挫折しない本の大きな違いは、自分が描いている目指す機能の実装までの距離感である。

私がフロントエンドで実装したいのは、フォームに入力された文字列のリアルタイムバリデード処理と、非同期通信の実装の2つが取り急ぎ実現したい機能だ。

Vue3をマスターすればこれら2つの機能実装は簡単なのかもしれない。でも購入した本は、大規模開発までの発展を意識した構成のため、私が実装したい機能の解説ページがいつ記載されているのかと先のページをペラペラと目を通しても、プロジェクト管理の概念だったり、コンポーネントの書き方といった、将来大掛かりでチーム開発に耐えられるような内容であって、私が実装したい小さな部分機能の実装については、あまり取り上げられていないように感じた。

正直いって個人開発しかやらない私からしてみれば、プロジェクト管理ツールやらビルドなんて作業は大掛かりすぎて現時点全く興味がなく、とにかくCDNで読み込んで単一ファイルの数行のコードを書いてサクっと実装するには、お膳立てが多すぎて、到達したい小さな目標までの道のりがあまりも遠回りように感じてしまったのが挫折した最大の理由。

意気込んで買ったものの、残念ながら購入した本は、本格的な実装するための事前環境整備をすることを前提がモリモリであって、私が求めている軽いレベルの実装よりも基礎が大事と言わんばかりの構成のため、第三章の途中からプロジェクト管理での書き方にシフトした時点で心が折れてしまった。

フロントエンドのプログラミング界隈ではjQueryはオワコン、これからはreactかVueで開発するのが主流みたいかことを書かれたブログやYouTube動画が多い。プロ界隈からすればオワコンなのは間違いない。

2020年はオワコン扱いされているjQueryを、今更ゼロからキチンと勉強するぐらいなら、最先端のVueを学習したほうが良いはずだと私も納得感がある。

でも、冷静に考えてみれば、開発者界隈ではオワコンと言わても、大事なのは実装したい機能を確実に少ない学習時間で実装させるのが重要であって、どんな方法で書かれているかは、利用者からしてみればどうでも良く、きちんと動くものがあるかないかがすべてだと書籍を読み進めていく中で挫折して考え直すようになった。

もう、業界の最先端の方たちがどんなに「jQueryなんてオワコン」と言われても、私はjQueryを改めてきちんとゼロ理解して使っていこうと思っている。

なぜならオワコンであろうとjQueryのほうが、私のようなJavaScript苦手野郎ですら、少ない学習コストでやりたいことが実装できるのがjQueryであり、ネット上にも情報は豊富で、ググればたいてい答えを見つけることができる。

オワコンであろうとも、すでに存在する充実な情報記載量のjQueryは、Vueにはない最大のメリットといって良いのではないだろうか。

運営するWebサービスのフロントエンド技術として、一日も早く実搭載するほうが遥かに重要で価値のあるわけで、Vueを勉強して実装するよりも早く目的達成メリットがあるのがjQueryといって良い。

そもそも利用者からしてみれば、この機能がjQueryで書かれたものなのか、Vueで書かれたものなのかの違いはどうでもよく、使い勝手の良いUIであるか、そうでないかがすべてである。

ところで、これまで作ってきたWebアプリにもjQueryで実装したフロントエンド技術はボチボチあるものの、そのほとんどがネットに書かれてたサンプルコードを丸写しして実装したものがほとんどだった。

つまり、本当の意味で、jQueryを理解できてないまま使って実装してきたのである。ネットにかかれたコードをそのまま引用し、とりあえず動いているからヨシみたいな使い方でごまかしてきた。

でもこんなやり方を続けていたため、今どうしても実装したい機能がネットサンプルだけでは実装できない壁にぶち当たった。

このままではダメだと思った。きちんとフロントエンド技術をゼロから勉強しようと考えた。そこでせっかくゼロから勉強するならVueをマスターした方が将来性もありそうだし、ちょうどVue3の正式版リリースもされたので、ベストなタイミングだろうとの思いで書籍を手に取ったのである。

ネイティブなJavaScriptの基礎中の基礎だけ学習し、本日から改めてjQueryの勉強を再開。そしたらさきほど、実装したかった機能を実現することができるようになった。

Vue3の参考書を読み続けていたら、今も実装できない状態が続いていることになる。途中で挫折を認め、今朝からjQueryの勉強をゼロベースできちんとやり直したら、たった一日で自分の考えどおりに動いてくれるようになったのである。

jQuery最高!、Vueクソ野郎!(笑)である。

私のようなレベルが考えるフロントエンド機能の実装程度なら、当面はjQueryだけで対応できると考えている。

そしてjQueryだけ実装していく過程において、やっぱりVueに乗り換えるべきと自分が実感できるようになってから、徐々にjQueryからVue3にシフトするのでも遅くはないのではないか。

なぜならVueをマスターするまでの時間的制限なんてないのだから、慌てる必要はまったくないのである。

言うまでもないが、私が将来ソフトウェア開発会社に就職する可能性はゼロ。あくまで自前のWebサービスの機能改善実現することが目的である。

実装手段は自分がすべて決められる環境にある。大事なのは自分の描いたとおりの機能を動かしてサービス提供することが重要である。だから機能搭載する手段としてオワコン技術を使おうがどうでも良いのだ。

というわけで、Vueで頑張るのは先送りする。当面はjQueryをきちんと理解してフロントエンドの充実を図っていきたい。

私がjQueryを正しく理解できる頃にはVue3関連書籍ももっと出てくるはずだ。自分にあった書籍が出たら、そのときに改めてjQueryからVueに徐々にシフトしていこうと思っている。
コラムワード検索
表示件数
ワード検索
本コラムに関する意見
Twitterにて受け付けます @megahit_jp