Vue

大規模な組織であればVue.jsを検討すべき5つの理由

この記事は、「Vue.js vs ******」のように見えるかもしれません。

フロントエンドの開発者が好きなことといえば、JavaScriptのフレームワークを書くことの他に、

JavaScriptのフレームワークを比較して、その背後にある意見を擁護する記事を書くことだと思います。

ここでは、他の技術では見たことがないような方法で、Vueが大きな組織にぴったりであるという意見を書きたいと思います。

エントリーコストが非常に低い

Vueのテンプレートファイルは、標準的なhtmlファイルに似ています。

また、Vueは非常に軽量で、jQueryよりもさらに軽量です。

そのため、他の依存関係の上にスクリプトを追加することは、

最終的に他の依存関係を削除することを考えると、許容できるオーバーヘッドです。

 

1人分の料金で2人の開発者を雇う

正直に言いましょう、ベテランのReact開発者にAngularのReactive Programmingや依存性注入の概念を教えたり、

Angular開発者に高次コンポーネントや関数の構成を教えたりすることは、納期の迫った製品では誰もが好まないオーバーヘッドになります。

人々は意見を持っているかもしれませんし、どちらかの方向に進むように説得するのは難しいかもしれません。

また、チーム全体を1つのパラダイムに合わせることができたとしても、新入社員がこの問題を何度も蒸し返してしまう可能性もあります。

Vueには複数のパターンがあり、先行するフレームワークからインスピレーションを得ていることを考えると、

私はVueを、異なるバックグラウンドを持つフロントエンドの開発者全員が収束する中間地点だと考えています。

フレームワークを使ったことがない開発者でさえもです。

また、Vueチームとコミュニティが作成した素晴らしいドキュメントも特筆すべきものです。

始めるためのガイドはシンプルで、コアなコンセプトが徹底的に説明されています。

そのため、ReactやAngularのバックグラウンドを持つ新入社員を探す際にも安心です。

 

根本からではなく、葉から始める

大規模な組織では、製品に共通のビジュアル言語を定義する際に多くの苦労があります。

一般的に、異なるチームが並行して製品を作り始めます。

複数の開発チームが善意で、再利用可能なウィジェットを書いて、それを社内で配布することを目標にしています。

問題は、ある製品はAngularで始まり、他の製品はEmberやReactで始まったかもしれないということです。

もしかしたら、それらの製品は同時に始まったものではなく、コンプライアンス上の理由でバージョンがロックされているかもしれません。

そのため、Ember 1.18で書かれたウィジェットのライブラリは、Angular 2のコンテナアプリケーションとうまく連携できません。

そのため、同じカルーセルウィジェットを4つ実装することになってしまいます、これは手直しが大変ですよね?

しかし、Vueならあなたをカバーできます。

ライブラリファイルのフットプリントが軽いので、依存関係をドロップするだけで簡単にウィジェットをレンダリングすることができます。

VueのAPIは他のライブラリとも相性が良く、実装の複雑さにもよりますが、W3C仕様に準拠したWebコンポーネントを、

Vueライブラリ自体も含めて、小さなパッケージ化された依存関係で提供することもできます。

StackOverflowで「nested ng-apps」を検索する必要もありません。

Vueは、異なるバージョンのVueであっても問題なく動作します。

さらに、Node.jsを使ったサーバーサイドレンダリングに投資したい場合は、

Nuxtのようなライブラリがあります。

Nuxtは、Vueチームによって公式にサポートされていないにもかかわらず、

同じように一流のドキュメント基準を持っています。

 

開発者のための、開発者によるデザイン

オープンソースプロジェクトの健全性を示す指標として、「GitHubの星評価」があります。

これは、本番環境での使用率とは比較できませんが、コミュニティの影響力とサポートを表しています。

Vueを採用していない人の多くは、多くのスタイル上の理由からVueに反対の意見を述べていますが、

それらはより意見の強い(通常はシニアの)開発者です。

しかし、GitHubのスター数でVueがReactを上回った時期があったことは、

中堅から上級の開発者の間で採用されていることを示す良い指標です。

また、Vueは主要なフレームワークの中で唯一、

大手テクノロジー企業のバックアップを受けていません(AngularはGoogle、ReactはFacebookがバックアップしています)。

歴史的に、これはVueの採用に対する議論となってきましたが、私は実際にその事実が本当の強みだと考えています。

他のフレームワークは、製品内部の要求を解決することからスタートし、その後オープンソースとして公開されましたが、

Vueは、当時利用可能だったフレームワークにおける開発者の経験を解決することからスタートしました。

このように開発者に焦点を当てているからこそ、Vueは本当に楽しいものになっていますし、

幸せな開発者は生産的な開発者であると強く信じています。

 

耐久性に優れている

常磐線のブラウザ、JavaScriptエンジン、ECMAScriptの仕様、フレームワークやツールの変更が同時に行われる中、

すべてを後方互換性に保ち、パフォーマンスやAPIの整合性を損なうことなく新機能の恩恵を受けることは本当に難しいことです。

古典的な例としては、Angular 1.xからAngular 2への移行が挙げられます。

しかし、そのエピソードの後、状況は変わり、主要なJavaScriptフレームワークは教訓を学びました。

そして、Vueは互換性を非常に重視しています。Vue 3.0のロードマップと計画によると、壊れるような変更があることを考慮すると、

ベースAPIのほとんどは変わらないか、互換性のあるビルドや、以前のバージョンからアップグレードするための他のパスが用意されています。

このコミットメントは、将来に向けたフレームワークの成熟度と安定性を示しています。

 

さて、あなたはどうしますか?

新しい技術に切り替えるのは時に怖いものですが、大規模な組織となるとなおさらです。

この記事はあくまでも個人的な意見ですが、Netflix、Alibaba、GitLabなどの企業は、

すでに本番環境でこのフレームワークを使用しています。

Vueは唯一の技術ではありませんが、しかし、私たちのチームを結びつける技術は、投資する価値があると確信しています。

Pocket
LinkedIn にシェア

  • この記事を書いた人

藤沢瞭介(Ryosuke Hujisawa)

りょすけと申します。18歳からプログラミングをはじめ、今はフロントエンドでReactを書いたり、AIの勉強を頑張っています。off.tokyoでは、ハイテクやガジェット、それからプログラミングに関する情報まで、エンジニアに役立つ情報を日々発信しています!

-Vue

Copyright© off.tokyo , 2021 All Rights Reserved Powered by AFFINGER5.