Angular

出典: フリー百科事典『ウィキペディア(Wikipedia)』
ナビゲーションに移動 検索に移動
Angular
Angular full color logo.svg
作者 Google
初版 2.0 / 2016年9月14日(3年前) (2016-09-14[1]
最新版 8.2.14 / 2019年11月13日(61日前) (2019-11-13[2]
リポジトリ github.com/angular/angular
プログラミング言語 TypeScript
サポート状況 アクティブ
種別 JavaScript, シングルページアプリケーション
ライセンス MIT License
公式サイト angular.io
テンプレートを表示

Angular(アンギュラー)は、Googleと個人や企業のコミュニティによって開発されているTypeScriptベースのオープンソースフロントエンドWebアプリケーションフレームワークである。

概要[編集]

AngularJSにはパフォーマンス面と機能の分かり易さについて多くの欠点があったため、AngularJSを構築した開発チームが1年かけて1からコードを書き直した[3]。一部の機能や名称は引き継がれているが、基本的に別のフレームワークである。

Angularはコンポーネントベースのアーキテクチャを採用している。すべてのAngularアプリケーションには、ルートコンポーネントと呼ばれる少なくとも1つのコンポーネントがある。各コンポーネントには、ビジネスロジックの処理を担当する関連クラスと、ビューレイヤを表すテンプレートがある。複数のコンポーネントを積み重ねてモジュールを作成することができ、各モジュールはそれ自体で機能単位を形成する。

特徴[編集]

Angularアプリケーションのアーキテクチャ

Angularには、以下のような特徴がある。

  • シングルページアプリケーション(SPA)の開発に向いている。
  • フルスタックフレームワークであり、単独でフロントエンド開発に必要な機能が一通り揃っている。
  • コンポーネント指向アーキテクチャである。

AngularとAngularJSの違い[編集]

AngularとAngularJSは、以下の点が異なる。

  • AngularにはScopeやコントローラーという概念が無い。代わりに、コンポーネントベースのアーキテクチャを使用する。
  • 推奨される開発言語がJavaScriptからTypeScriptに変更された。
  • データバインド等の文法が変更できる。
  • フィルター(Filters)はパイプ(Pipes)に変更された[4]。機能はほぼ同じである。

名称について[編集]

2012年6月にリリースされたバージョン1は「Angular 1」や「AngularJS」と呼ばれており、その後、2016年9月にリリースされたバージョン2は「Angular v2」または「Angular2+」と呼ばれていた[5][6]。ただし、後述の通りバージョンリリースサイクルが早いため、バージョン2以降は単に「Angular」と呼ばれるようになった。

バージョンおよびリリースサイクル[編集]

Angularは半年ごとにメジャーリリースを行う[7]

バージョン2[編集]

Angular 2.0は、ng-Europeカンファレンス22-23で発表された[8][9]。バージョン2.0の劇的な変更は開発者の間で論争を引き起こした。2015年4月30日、Angular開発者はAngular 2がAlphaからDeveloper Previewに移行したことを発表した[10]。Angular 2は2015年12月にベータ版に移行し[11]、最初のリリース候補は2016年5月に公開された[12]。最終版は2016年9月14日にリリースされた。

バージョン4[編集]

2016年12月13日にAngular 4が発表された。すでにv3.3.0として配布されていたルーターパッケージのバージョンのずれによる混乱を避けるために3をスキップしている[13]。最終版は2017年3月23日にリリースされた[14]。Angular 4はAngular 2と下位互換性がある[15]

バージョン5[編集]

Angular 5は2017年11月1日にリリースされた[16]。Angular 5の主な改善点には、プログレッシブWebアプリケーションのサポート、ビルドオプティマイザ、およびマテリアルデザインに関連する改善点がある[17]

バージョン6[編集]

Angular 6は2018年5月4日にリリースされた[18]。これは、基礎となるフレームワークにはあまり焦点を当てておらず、ツールチェーンと、将来的にAngularで素早く移動できるようにすることに重点を置いたメジャーリリースである。追加要素は、ng updateng add、Angular要素、Angular Material + CDKコンポーネント、Angular Materialスターターコンポーネント、CLIワークスペース、ライブラリサポート、Tree Shakable Provider、アニメーションパフォーマンスの向上、およびRxJS v6である。

バージョン7[編集]

Angular 7は2018年10月18日にリリースされた。追加要素は、アプリケーションパフォーマンス、Angular Material & CDK、仮想スクロール、選択のアクセシビリティの向上に関するアップデート、カスタム要素にWeb標準を使用したコンテンツプロジェクション、およびTypeScript 3.1、RxJS 6.3、Node 10に関する依存関係のアップデートをサポート(まだノード8をサポートしている)である[19]

バージョン8[編集]

Angular 8は、2019年5月28日にリリースされた。遅延読み込み、Webワーカー、TypeScript 3.4のサポート、およびオプトイン(Opt-in)プレビューとしてのAngular Ivyの差分読み込みを特徴としている[20]

今後のリリース[編集]

ハイライトの1つは、インクリメンタルDOMアーキテクチャーに基づく、後方互換性のあるまったく新しいレンダリングエンジンであるIvyのリリース予定である。 Ivyはツリーシェイキングを念頭において設計されており、アプリケーションバンドルには、実際にアプリケーションで使用されるAngularソースコードの一部しか含まれないようになっている。

各バージョンは、以前のリリースと下位互換性があると期待されている。 Googleは、年2回のアップグレードを行うことを約束した。

サポート方針とスケジュール[編集]

すべてのメジャーリリースは18か月間サポートされている。 これは6か月間の積極的なサポートで構成され、その間に定期的にスケジュールされたアップデートとパッチがリリースされる。 その後12ヶ月の長期サポート(LTS)が続き、その間は重要な修正とセキュリティパッチのみがリリースされる。

脚注[編集]

[ヘルプ]
  1. ^ Trigular, version 2: proprioception-reinforcement”. blogspot.com (2016年9月14日). 2017年3月18日閲覧。
  2. ^ angular/CHANGELOG.md at master · angular/angular”. GitHub. 2019年12月6日閲覧。
  3. ^ AngularJS and Angular 2+: a Detailed Comparison” (英語). SitePoint (2018年4月6日). 2019年1月5日閲覧。
  4. ^ Angular Docs”. angular.io. 2019年1月4日閲覧。
  5. ^ r/Angular2” (英語). reddit. 2019年1月5日閲覧。
  6. ^ AngularJS and Angular 2+: a Detailed Comparison” (英語). SitePoint (2018年4月6日). 2019年1月5日閲覧。
  7. ^ Angular Docs”. angular.io. 2019年1月5日閲覧。
  8. ^ GoogleがAngular 2を正式リリース! 未来のウェブ標準を意識した新しいフレームワーク” (日本語). ICS MEDIA (2016年9月16日). 2019年1月5日閲覧。
  9. ^ ng-europe - The first AngularJS European conference in Paris, France.”. 2015.ngeurope.org. 2019年1月5日閲覧。
  10. ^ Angular (2015年4月30日). “Angular 2 moves from Alpha to Developer Preview! Dev guide and API docs now available at http://angular.io/docs/js/latest/” (英語). @angular. 2019年1月5日閲覧。
  11. ^ Green, Brad. “Angular 2 Beta” (英語). 2019年1月5日閲覧。
  12. ^ One framework. Mobile & desktop. Contribute to angular/angular development by creating an account on GitHub, Angular, (2019-01-05), https://github.com/angular/angular 2019年1月5日閲覧。 
  13. ^ Minar, Igor. “Ok... let me explain: it's going to be Angular 4.0, or just Angular” (英語). 2019年1月5日閲覧。
  14. ^ Fluin, Stephen. “Angular 4.0.0 Now Available” (英語). 2019年1月5日閲覧。
  15. ^ Angular 4 coming in 2017, to be backwards compatible with Angular 2”. react-etc.net. 2019年1月5日閲覧。
  16. ^ Fluin, Stephen (2017年11月1日). “Version 5.0.0 of Angular Now Available”. Angular Blog. 2019年1月5日閲覧。
  17. ^ Krill, Paul (2017年9月18日). “AngularJS 5 JavaScript framework delayed” (英語). InfoWorld. 2019年1月5日閲覧。
  18. ^ Fluin, Stephen (2018年5月3日). “Version 6 of Angular Now Available”. Angular Blog. 2019年1月5日閲覧。
  19. ^ Fluin, Stephen (2018年10月18日). “Version 7 of Angular — CLI Prompts, Virtual Scroll, Drag and Drop and more”. Angular Blog. 2019年1月5日閲覧。
  20. ^ Fluin, Stephen (2019年2月8日). “A plan for version 8.0 and Ivy”. Angular Blog. 2019年6月7日閲覧。

関連項目[編集]

外部リンク[編集]