サンフランシスコで開催されたAngular UでBrad Green, Igor Minar, Misko Hevery各氏が基調講演を行い,今年初めのng-confの発表内容を再確認するとともに,年内の予定に関するロードマップを公開した。
Minar氏は3月に公開された,いくつかの新たな展開について説明した。これらが“試験的”なものであることに注意を促しながら,氏が取り上げたのは,Angularを2つの部分 – コア機能とレンダラに分割するというアイデアだ。フレームワークを2分することで得られる次の3つの分野によって,Angularの新たな,興味深い利用方法が可能になると期待される。
Webパフォーマンスの面では,フレームワークの分割によって,非UI処理の多くをWebワーカに委譲することが可能になる。UIはメインスレッドになければならないので,分離されたレンダラをそちらに置いて,相互に通信を行うことになるはずだ。Minar氏は言う。
私たちは,‘アプリケーション全体をWebワーカに移動して,ビジネスロジック全体,データフェッチと処理全体をメインスレッドから取り出すことはできないか’ と考えています。さらには,‘フレームワーク自体をWebワーカに置けないか’ とも。そうなれば,フレームワークの提供するすべてのサービスやダーティチェックも,メインスレッドでは実行されなくなります。
AngularチームとReactチームのミーティングの後には,“AngularとReact Nativeを統合したら,どのようなものになるか” という検討が行われた。ここで新たに生まれたシナリオが,コア部分は既存のままで,レンダラをスイッチアウト可能にすることで,iOSやAndroidなど新たなプラットフォームをサポートする,というものだ。
Minar氏は,React NativeのマークアップとAngularスタイルの補間を使って,ネイティブなiOSシェル内でAngular JavaScriptを実行するデモを公開した。このシナリオをスクラッチから構築する代わりに,チームはReactチームに加えて,Tererikと彼らのNativeScriptプラットフォームも採用することで,目的を達成している。このデモはGitHubから入手可能だ。
Angularのユーザは以前から,スタートアップ時間の改良やSEOといった問題解決のために,サーバサイドでのレンダリングを望んでいた。今回提案されたアーキテクチャは,この問題に対する解決策でもある。
Web開発者に対しては,アーキテクチャの変更はほぼ透過的なものだ。Googleは開発者によるレビューを目的として,アーキテクチャ分割の要旨を公開している。
Green氏はAngular 2の開発について,最新情報を公開した。提供日に関するコミットこそなかったものの,プロジェクトのリリースまでのステップを詳しく説明してくれた。チームは現在,コア部分の仕上げ作業と合わせて,現在移行作業中のGoogle内部チームからのフィードバック収集を行っている。コアの作業が完了すれば,APIシュガーやパフォーマンス向上,ドキュメントに関する作業に移る予定だ。
氏はAngular 1.Xと,ロードマップ上の位置付けについても取り上げて, “Angular 1.5ではマイグレーションに重点を置いている”,と話した。さらに,新たな自動マイグレーションツールにも取り組んでいて,一部はすでにGoogle社内で使用されている。“[コミュニティに]提供するにはどれが妥当か見極めたい”,と氏は述べている。さらに氏らは,開発者のマイグレーションを支援するガイドにも取り組んでいる。 今回の基調講演の詳細はビデオを見るか,あるいはスライドで確認してほしい。
Angular Uは,同チームが今年参加する3つのイベントの2番目に当たる。第3のイベントであるAngular Connectは2015年10月,ロンドンで開催される予定である。