Vueを昨年度ぐらいからコツコツと勉強しています。
正直、その理由の半分ぐらいは「流行っているから」というのが大きいですね(汗)
エンジニアとしてはやはり新しい技術自体を追い求めること自体に「快感」のようなものがあると思います。これはいいことでもあり、悪いことでもあります。
新しい技術を追い求めることはいいことですが、技術自体は手段にするというのが正しいと思います。
わかりやすくいうと
- 工数を減らせる
- メンテ・修正が楽
などですね。
単純に新しい技術を追い求めるのが好きで、そのためにかえって工数が膨らんだり、メンテできるエンジニアが減ったりしますので、結果としてリスクになることもあるからです。
そんなことを漠然と思っていたんですが、先日、これはVueを使ったら楽だろうな・・・と思われる開発がありました。
イベントや要素の数が非常に多く、Aという要素が変わると、Bという要素に影響を与え、それがCに・・と言ったように連鎖していくパターンです。Aに対して複数のイベントがある場合、ソースが非常にカオスになってきます。
このようにイベントが非常に多く、複雑に連動しているようなアプリの場合、jQueryの場合、制御がイベントベースになるため、扱いが難しくなります。
参考書には上記のようなことが書かれていたのですが、やはり経験してみないとわからないことは多いですね。
読んでもあまり実感がわかりませんでしたが、実際に書いてみるとその効果がわかります。
先日かなり込み入った画面処理をjQueryで書いたところかなり大変だったため、Vueでモック的なものを構想したところだいぶすっきりとかけることに気づきました。
Vueの場合、値自体を持たせることができ、値を参照して状態を制御できるため、ある値が変化した時の状態というのをイベント管理しておく必要がないため、この点が非常に楽なのです。
私はVueのメリットを理解するには同じ内容のものをjQueryとVueで書き分けるのがいいと思います。
jQueryにもjQueryの良さというのが当然あるからです。
まさに「必要は発明の母」だと感じました。