Angularとは?JavaScriptフレームワークについて解説

Angularとは

Angular(アンギュラー)は、Googleによって開発されたウェブアプリケーション構築用のJavaScript/TypeScriptフレームワークです。2009年にAngularJSが、2016年にAngularが公開されています。

Angularは、バージョンアップのサイクルが大変早く、半年ごとにメジャーバージョンがアップされています。2020年初時点の最新バージョンは、2019年にリリースされたAngular 8系です。

AngularJSとAngularの違い

Angularは、バージョン1と2以降で名称が変更されています。「AngularJS」と呼ばれる場合にはAngular 1を指し、「Angular」と呼ばれる場合にはAngular 2以降を指します。AngularJSとAngularは名称こそ似ていますが、利用する際には別のフレームワークと考えたほうがよいでしょう。

AngularJSとAngularの最大の違いは、推奨されている開発言語です。AngularJS (Angular 1)ではJavaScriptでの開発が推奨されています。Angular(Angular 2以降)ではTypeScriptでの開発が推奨されています。

Angular(Angular 2)では、開発言語がTypeScriptに変更されています。それが明確になるように、俗に「AngularTS」と呼ばれることもあるようです。

Angularの特徴

Angularには、以下の特徴があります。

  • モダンなウェブアプリケーションが構築できる
  • シングルページアプリケーション(SPA)の開発に向く
  • どちらかと言えば、大規模なウェブアプリケーション開発に向く
  • 機能豊富なフルスタックフレームワーク
  • 機能豊富な分だけ学習コストが高い
  • TypeScriptでの開発が推奨されている

Angularを利用すると、モダンなウェブアプリケーションを構築できます。特に、ページ遷移しないで単一のページでコンテンツを切り替えるシングルページアプリケーション(SPA)の開発に向いています。

Angularは、機能豊富なフルスタックフレームワークです。Angularだけでウェブアプリケーション開発に必要な機能が揃っており、どちらかと言えば、大規模なウェブアプリケーション開発に向くかもしれません。その反面、覚えなくてはならないことも多く、学習コストが高いフレームワークとされています。

Vue.jsとの比較

高機能・多機能なAngularと比べると、Vue.jsはシンプルで軽いのが特徴です。Angularは高機能で大規模開発に向きますが、 開発をすると他のフレームワークに乗り換えにくいなどのデメリットもあります。

Angularが大規模なウェブアプリケーションの開発に向くのに対して、 Vue.jsでは一部機能を実装するだけの簡易利用や、他のフレームワークと組み合わせての併用利用にも向いています。

Reactとの比較

高機能・多機能なAngularと比べると、Reactはシンプルで軽いのが特徴です。Angularは高機能で大規模開発に向きますが、 開発をすると他のフレームワークに乗り換えにくいなどのデメリットもあります。

AngularやVue.jsでは、HTMLやCSSはテンプレートとして用意されています。一方Reactでは、HTMLやCSSまですべてJavaScript内で管理されています。

2019年末時点の調査によれば、Angularが学習コストの高さから敬遠される傾向にあるのに対して、Reactの人気は上昇傾向にあるようです。

Angularを学ぶメリット

Angularは、世界的に利用者の多いフレームワークです。 高機能・多機能であり、使いこなすことができれば、ウェブアプリケーションの構築がスムースに行えるでしょう。

Angularで求人を検索すると、ウェブサービス開発、ウェブアプリケーションのフロントエンド開発などでの募集が確認できます。Angularのスキルが求められる職場では、他に使えることが望ましいスキルとして、HTML/CSS/JavaScript、React、Vue.js などが挙げられています。

Angular 公式サイト: https://angular.io/
Angular 日本語: https://angular.jp/