https://zenn.dev/sa2knight/articles/why_react_folks_dont_choose_vue
本記事は、 Vue.js
コアチームメンバーである @antfu7
氏の以下ツイートに対する回答を個人的にまとめたものです。
React ユーザーの皆さん、 好奇心で聞くのですが、Vue を使ったり試したりするのを妨げているブロッカーや欠点は何ですか?
対立煽りっぽいタイトルにはなっていますが、個人的な好奇心がモチベーションとなっており、特定の技術を贔屓、批判する意図はありません。
私自身は長らく Vue
を愛用しており、業務でも大規模 Vue アプリのメンテに携わっている一方で、React
は小規模プロジェクトや個人開発でしか利用していません。そのため、理解度に差がある状態であるため、改めて Vue
と React
の対比やそれぞれの良さを実感したいと思い、一通りのツイートに目を通した次第です。
また、 Vue.js
の生みの親である Evan You
氏が以下のようにツイートしている通り、回答に含まれる Vue
に対する不満点の多くは Vue 3 及びそのエコシステムで解決されているものを含んでいます。
素晴らしい文化的な議論です。とはいえ、Reactユーザーの中には、Vueを数年前にちょっと試したときの経験に基づく認識がまだ残っている人がたくさんいるような気がします。 私はまだ、「React開発者のためのVue 202x版」ブログ記事を完成させる必要があります。
さらに、いくつかの回答に対しては Vue
ユーザーの方々からのフォローも入っているので、合わせてみてみると Vue
もイケるじゃんともなってくるのでオススメです。
本題です。すべてのリプライに目を通しつつ、いくつかの観点別に、代表的なツイートを抜き出しています。
Vue
が順当な進化を経て機能上の差異がなくなってきたことにより、これが大きな理由となるケースが多いようです。
React
は Vue
と比べるとフレームワーク (Nest.js
) やデータフェッチライブラリ (SWR
, tRPC
) などの成熟スピードに差があり、常に最善の選択ができることが理由としてあげられています。
特に Vue
は Vue 3 への移行がエコシステム全体で追従しきれていないため、依然としてモダンな構成の選択が限られることが問題視されています。 (とはいえ Vue
はコアチームから VueRouter
VueI18n
などの主要なライブラリが出ているのが救いではある)
個人的にも React
のエコシステムに対する安心感を羨ましいと思うことがあり、特に Storybook
のような開発支援系ツールは React
を先行してサポートする傾向がある印象があります。
React
は TypeScript
との相性が非常に良く、複雑なセットアップを行わずともすぐに型安全な開発を行えます。