マジセミドライブ

ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。

OSS情報

2020.01.01

【OSS情報アーカイブ】AngularJS

【OSS情報アーカイブ】AngularJS

※当記事に記載されている情報は、古くなっている場合があります。オフィシャルサイトで最新情報をご確認ください。

「AngularJS」とは

基本情報

概要

AngularJS(アンギュラージェイエス)とは、Googleとコミュニティにより開発されているオープンソースJavaScriptアプリケーションフレームワークです。ブラウザ上で動作するWebアプリケーション開発にMVCアーキテクチャを取り入れることを目的としています。

基本説明

AngularJSは、テンプレート言語としてHTMLを使用して、アプリケーションコンポーネントを分かりやすく簡潔にするためにHTML文法を拡張します。「データバインディング」と「DI(依存注入)」を通して大部分の余計なコードを排除できます。複雑なWebアプリのフロントエンドも効率よくシンプルに実装できます。

AngularJSの思想として、『UI構築とソフトウェアコンポーネントを同時に行う際には、 命令形のコードはビジネスロジックが表現するのに優れてはいるものの、 命令形のコードより宣言コードのほうが優れている』という信念のもとに構築されています。

AngularJSは、クライアント側JavaScriptのコントローラでデータモデルを管理し、画面(ビュー)とリアルタイムにデータを交換するようなアプリケーションに適したフレームワークです。

AngularJSは人気が高く、Googleが開発に携わっていることにより、安心して学習できるフレームワークです。

得意分野/不得意分野

AngularJSを使うと、設計/実装ルールがある程度強制されるため、それに従うことで、コード量削減や、品質の差を小さくするなど、生産性が大きく向上することが期待できます。

AngularJSはCRUDアプリケーション構築を念頭において設計されています。マスターメンテのようなCRUD系アプリ/業務系アプリなどの、各機能が独立した画面として存在し、フォームでデータ送受信を行うようなアプリに向いているとされています。

AngularJSは、高階層での抽象化により、アプリケーション開発を簡素化します。 ただし、抽象化は柔軟性を犠牲にするという一面もあるため、 すべてのアプリケーションがAngularJSに適しているわけではありません。

ゲームアプリ(変化するデータが大量、速度重視)や、シングルページアプリケーション(画面遷移しないWebアプリ)は、あまり向いていないとされています。

経緯

2009年 初版発表

2012年6月 バージョン1.0.0がリリース

主なポイント

■フルスタックフレームワーク
■HTMLテンプレート
■テンプレートエンジン(モデルの値をレイアウトするための機能)
■双方向データバインディング(モデル/ビュー間での値の変更を互いに反映させる機能)
■MVWパターン(MVCの派生パターン)
■ディレクティブ(条件分岐、繰り返し、イベント処理など、ビューで利用する定型的な機能を提供するカスタムタグ/属性)
■カスタムディレクティブ(再利用可能なコンポーネントと独自のマークアップ)
■ディープリンク(動的ページにリンクを設定)
■DI(依存性注入)
■フィルター(ビューに出力すべき値を加工する機能)
■ルーティング(URLに応じて適用するテンプレートを切り替え)
■Ajax通信機能
■REST志向
■フォームバリデーション
■サーバとの連携
■ローカライゼーション
■テスト環境(ユニットテスト、e2eテスト)

同様製品(概要情報)

同様な機能を提供する製品として、次のようなものがあります。

「Backbone.js」「Knockout.js」「Ember.js」など。

導入事例

世界中で人気が高まっています。

ライセンス情報

AngularJSのライセンスは、「MIT License」です。このライセンスに従うことを条件として、ソースコードの改変と公開が許可されています。

ダウンロード

ダウンロードページ

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

この記事のタグ一覧

おすすめの記事

【トレンド解説】超入門「 スマートファクトリー 」🏭

トレンド解説

2024.04.15

【トレンド解説】超入門「 スマートファクトリー 」🏭

「 スマートファクトリー 」への理解を深めるための解説として、初心者向けにわかりやすくまとめた記事です。「新しい工場の概念」「デジタルツインの活用」「IoT技術による最適化」など、現代の製造業に必要な知識を効果的に学べます。 スマートファクトリー の導入によるメリットを具体的に解説しています。

【IT用語解説】「 デジタルヒューマン 」とは😊

IT用語解説

2024.01.26

【IT用語解説】「 デジタルヒューマン 」とは😊

【IT用語解説】「 デジタルヒューマン 」として、「デジタルヒューマンとは何か?」「どのようにして作成できるのか?」「私たちの世界にどのような影響を与えているのか?」などについて、まとめています。