JavaScript MVCフレームワーク「AngularJS 1.2」リリース。要望の多かったアニメーション機能が追加、脆弱なコードを制限するモードも

2013年11月11日

Googleがオープンソースで開発しているJavaScript MVCフレームワーク「Angular JS」の最新版「AngularJS 1.2」がリリースされました

AngularJS — Superheroic JavaScript MVW Framework

JavaScriptのMVCフレームワークはBackbone.jsやEmber.jsなど多くの種類が登場していますが、Backbone.jsやEmber.jsなどが比較的シンプルなフレームワークを指向しているのに対して、AngularJSの特徴はUIバインディングを含むリッチなフレームワークとして開発されていることです(ちなみにAngularJSのWebサイトでは「MVWフレームワーク」と名乗っています。MVWのWはWhateverらしいです)。

AngularJSでは、HTMLにJavaScriptのコードを混ぜ込まなくとも、識別子を差し込むだけで、その識別子に対応したモデルのデータを自動的かつリアルタイムに表示してくれます。逆に、HTMLのフォームに識別子を差し込んでおけば、そのフォームで入力された内容が自動的にモデル内のデータへと反映されるようになっています。

参考:グーグル製のJavaScript MVCフレームワーク「AngularJS」、正式版が公開

AngularJS 1.2では、主に以下の新機能が追加されたと説明されています。

要望の多かったアニメーション機能を追加

アニメーションとトランジション機能(以下まとめてアニメーション機能)は、追加モジュール「angular-animate.js」を読み込むことで利用可能にしました。

AngularJS 1.2の機能をGoogleのエンジニアが解説した動画「AngularJS 1.2 and Beyond」によると、AngularJSに対してもっともリクエストが多かった機能の1つがこのアニメーション機能だったそうです。

AngularJS 1.2のアニメーション機能は、AngularJSの宣言的な記述だけでHTMLの要素に対してCSSのアニメーションを実装することができるように作られています。また、もしCSSに対応していないブラウザでは自動的にJavaScriptによる動作にフォールバックするとのこと。

改良されたエラーメッセージと脆弱性への対応

改良されたエラーメッセージについては「Error Message Minification with MinErr」で解説されています。要点を抜粋すると、従来のAngularJSでは以下のような分かりにくいエラーメッセージが表示されるケースがあったと。

Error: 10 $digest iterations reached. Aborting!
    at Object.g.$digest
    at Object.g.$apply
    at Object.d [as invoke]

改良されたエラーメッセージでは、もっと分かりやすいエラーメッセージをダイジェストで表示できるようになります。

Strict Contextual Escapingモード(SCE)については、AngularJSドキュメントの「$sce」に次のような解説があります。

SCE assists in writing code in way that (a) is secure by default and (b) makes auditing for security vulnerabilities such as XSS, clickjacking, etc. a lot easier.

SCEはデフォルトでセキュアなコードを書くのを助けるため、標準でセキュアで、XSSやクリックジャッキングといったセキュリティの脆弱性の検査をとても容易にしてくれる。

脆弱性を持つ可能性があるコードを書かないように制限してくれるモードのようで、AngularJS 1.2ではデフォルトで有効になっているとのこと。

あわせて読みたい

JavaScript Web技術 Google MVC




タグクラウド

クラウド
AWS / Azure / Google Cloud
クラウドネイティブ / サーバレス
クラウドのシェア / クラウドの障害

コンテナ型仮想化

プログラミング言語
JavaScript / Java / .NET
WebAssembly / Web標準
開発ツール / テスト・品質

アジャイル開発 / スクラム / DevOps

データベース / 機械学習・AI
RDB / NoSQL

ネットワーク / セキュリティ
HTTP / QUIC

OS / Windows / Linux / 仮想化
サーバ / ストレージ / ハードウェア

ITエンジニアの給与・年収 / 働き方

殿堂入り / おもしろ / 編集後記

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本