Vue.js

概要

Vue.jsとは、Webアプリケーションの表示・操作部分(UIユーザーインターフェース)を効率的に開発することができるJavaScriptライブラリオープンソースソフトウェアとして公開されている。

Webブラウザ実行するフロントエンド部分に特化しており、他のWebアプリケーションフレームワークやライブラリなどと組み合わせやすい。また、「プログレッシブフレームワーク」を標榜しており、最小限の機能だけを選択して開発を始め、後から必要に応じて機能を追加することができる。

APIApplication Programming Interface)はシンプルで、少ない記述量で目的を達することができるよう配慮されている。独自のマークアップ言語などは用意しておらず、標準のHTML雛形テンプレート)として、「v-」で始まる属性を追加する形で要素を定義することができる。

ページ上のHTMLの現在の状態を内部的に保持しておく「仮想DOM」(virtual DOM)の仕組みを採用しており、要素に変更が加えられると自動的に必要な箇所だけ描画し直す。少しの更新のためにページ全体を再描画しないため高速で軽快な表示・操作感が得られる。仮想DOMの操作はVue.jsが内部的にうため開発者は意識しなくて良い(明示的に操作することもできる)。

ページ上の要素とスクリプト上のデータを対応付け(バインディング)でき、変化に対して自動的に追随させることができる(リアクティブシステム)。データを変更すれば対応するページ上の要素に、ページ上の要素を変更すれば対応するデータに、双方向に自動的に変化が伝えられる。

UI要素をコンポーネント(部品)化する仕組みを内蔵しており、独自の機能や属性を持つ新しいHTML要素タグ)を定義することができる。このカスタム要素をテンプレート中で組み合わせてページを構成することができ、大規模なアプリケーション開発で共通のUI要素を定義したい場合などに役立つ。

Vue.js本体は軽量でファイルサイズも小さいが、ライブラリを追加することでクライアントサイドルーティング(Vue Router)、大規模な状態管理(Vuex)、コマンドラインツール(Vue CLI)、JavaScriptモジュールへの変換(Vue Loader)、Browserify連携(vueify)など本格的なWebアプリケーション開発に必要な機能を組み込むこともできる。

Vue.jsの開発は米グーグルGoogle)社のエンジニアだったエヴァン・ヨー(Evan You/尤雨溪)氏が創始し、2014年に初版が公開された。氏は開発の動機について、AngularJSを使用してきた経験から、Angularから気に入った要素だけを抽出して軽量なライブラリを作りたかったと述べている。現在は氏の設立したビューテクノロジー社(Vue Technology LLC)が開発を主催しており、MITライセンスに基づいてオープンソースとして公開している。

(2021.9.21更新)

他の辞典による解説 (外部サイト)

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。
ホーム画面への追加方法
1.ブラウザの 共有ボタンのアイコン 共有ボタンをタップ
2.メニューの「ホーム画面に追加」をタップ
閉じる