~Linux、MySQLからAJAXまでAngularJSの特徴についてまとめました公式サイトの記述を参考にしてAngularJSの特徴をまとめました。(1)まずは実際に動かしてみる公式サイトにあるサンプルコードを実際に動かしてみます。http://angularjs.org/1”todo.js”という名前でJavaScriptファイルを作成し、サンプルコードをコピー。2HTMLファイルを任意の名前で作成し、サンプルコードをコピー。done:false}];(2)AngularJSの特徴この項の目次1)なぜAngularJSか?2)拡張性3)基本的なコード4)データバインディング5)コントローラ6)プレーンなJavaScript7)ディープリンキング8)クライアントサイドフォームバリデーション9)サーバーとの連携10)ディレクティブ11)コンポーネントの再利用12)ローカライゼーション13)組み込み可能(Embeddable)14)注入可能(Injectable)15)テストしやすい1)なぜAngularJSか?・HTMLは静的ドキュメントで動的なビューを定義するには向いていない。・AngularJSはHTMLを個別のアプリ用に拡張できる。・表現性に優れ、読み易く、すばやく開発できる。・AngularJSはアプリ開発に適するようにフレームワークを構築するためのツールセット・拡張性があり他のライブラリともうまく動作する。・すべての機能は、個別の開発に合わせて変更したり置き換えたりする事が出来る。入力した名前”が表示)が作成できる。4)データバインディング・モデルを更新するとビューにも自動で反映。ビューを変更するとモデルも更新される。これによって面倒なDOM操作軽減できる。5)コントローラ・コントローラはDOMエレメントに対する振る舞いを記述。・AngularJSではこの振る舞いをDOM更新の共通定義、モデル変更の監視、コールバックの登録なしにきれいで読みやすいコードを記述できる。6)プレーンなJavaScript・他のフレームワークと違ってアクセサーメソッド内でモデルをラップするための専用のタイプを継承させる必要がない。・プレーンなJavaScriptオブジェクトなのでテスト、メンテナンス、再利用が容易7)ディープリンキング・ディープリンクは、アプリ内でユーザーがどのページにいるかを反映でき、見たいページでブックマークするときなどに有用。・通常のサーバーへのラウンドトリップがあるアプリでは自動で取得できるがAJAXアプリでは出来ない。・AngularJSではディープリンクのメリットをデスクトップアプリのような振る舞いになるように結びつけている。下記ページに詳しく説明されています。http://docs.angularjs.org/cookbook/deeplinking一つのページ内のある領域に異なるURLで選択して表示内容を切り替えられる例が紹介されています。8)クライアントサイドフォームバリデーション・JavaScriptによるコードを記述せずにフォームのバリデーションルールを定義できる。・サードパーティライブラリを使った様々な他のバックエンドと同様にXHR(XMLHttpRequest)上のビルトインサービスを提供する。・”promise”は、データの非同期のリターンをハンドリングする事によってコードをよりシンプルに出来る。10)ディレクティブ・ディレクティブはAngularJSでのみ利用できるユニークで強力な機能。・ディレクティブによって、開発しているアプリ固有の新しいHTML構文を作成できる。・再利用できるコンポーネントを作成するのにディレクティブを使用出来る。・コンポーネントによって複雑なDOM構造、CSS、ロジックを隠蔽できる。・コンポーネントによってアプリが何をし、どのように見えるかを分離することが出来る。12)ローカライゼーション・AngularJSのロケールはフィルターを使用でき、ディレクティブを利用してすべてのロケールで利用できるようにブロックを構築する事が出来る。13)組み込み可能(Embeddable)・AngularJSは他のテクノロジーともうまく動作する。既存のページに好きなだけAngularJSを追加する事が出来る。他のフレームワークはフルコミットメントする必要がある。・一つのページに複数のAngularJSアプリを組み込む事が出来る。・AngularJSはグローバルステートを持たないのでiframeを使用しなくても一つのページに複数のアプリを実行させる事が出来る。Injection(依存性注入、DI)によって、アプリがどのように結合するか宣言する形で表現できる。これによってメンテナンスが大変なmain()メソッドが必要なくなる。・DIはAngularJSのコアでもあるので、開発者のニーズに合わないコンポーネントを簡単に交換することが出来る。15)テストしやすい・AngularJSはテストしやすいように設計されている。・振る舞いとビューを分離しやすく、モックがプレバンドルされていて、DIによるメリットを享受できる。・エンドツーエンドのシナリオランナーの機能も有している。コメントをキャンセルメールアドレスが公開されることはありません。※サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。コメントデータの処理方法の詳細はこちらをご覧ください。WordPressモバイルバージョンに。