RSS

An Early Look At IE9 for Developers を日本語で

19 11月

久しぶりに、個人 Blog の方に Internet Explorer について書きます。
というのも、やっぱり初めて? Internet Explorer 9 が公の場で話がなされたわけですし、ある意味記念日でもあると思うので。
許可が取れて社内 Review できたら、Windows 開発統括部 Blog に移すかも。。。です。

ただ、、、翻訳内容は多少私の解釈に基づく意訳を入れると思いますし、あくまで個人として訳したものなので、会社でレビューしていないので、ちゃんとした日本語になってないかもしれませんのでご了承ください。

ちなみに PDC09 では、もうひとつ、個人的に注目していたセッションがあるので、そちらについても時間を見つけて日本語での解説記事も書いてみます。
あ、そのセッションは Eric LawrenceBecome a Web Debugging Virtuoso with Fiddler です。
すでに、動画も PPT も配信されているので、興味のある方はぜひ!彼の作った HTTP デバッガである Fiddler を愛用している人も、初めて知った人にも、役に立つセッションだと思います。(本当はこっちを先にやりたいし、Admintech.jp でも紹介した Eric の IE 向けのマウスジェスチャーアドオンについても書きたいんだけれど。。。おっと、IE Blog でも紹介しちゃいましたねぇ~。)

では、以下、お楽しみください???

——————————————

2009年11月18日木曜日 9:23

An Early Look At IE9 for Developers (IE9 初見 – 開発者向け- ってとこか?)

Windows 7 をリリースして約1か月経った今、私たちは Internet Explorer 9 におけるいくつかの開発中の機能について、初めて皆さんに紹介したいと思います。

本日の PDC09 (Microsoft の開発者向けのイベント) において、パフォーマンスと標準技術の相互運用についての進捗に加えて、IE と Windows が PC ハードウェアのパワーをどうやってブラウザー上で Web 開発者が利用できるようになるのか?ということを紹介しました。特に、現時点で他のブラウザーがまだ実装できていない Web ページにおけるすべてのグラフィックとテキストのハードウェアを利用したレンダリング (hardware-accelerated rendering) について紹介しました。Web サイト開発者はサイトの再構築 (書き直し) が必要なく、パフォーマンスが向上することとその他の利点を目にすることになるでしょう。

パフォーマンスの向上。 ブラウザーパフォーマンスは、ブラウザーの異なる多くのサブ システムが関係してきます(サブ システムの影響を受けます、かな?)。異なるサイト(や、同じサイト内での異なる機能)においては、読み込みの仕方やブラウザに要求されてくることが異なってきます。

例えば、ユーザーにとっては似た感じのする2つのニュースサイトでも、それぞれはとても異なったパフォーマンスの特性を持っていたりします。それは開発者がそのサイトをどうやって作ったかによりけりで、一方のサイトは Javascript エンジンと DOM の処理にその (読み込みやパフォーマンスに影響する) 大部分の時間を費やされるようになっていたり、もう一方はレイアウトとレンダリングに時間を費やされるようになっていたりします。また、単純なページだけのサイトに比べアプリケーション寄りのサイト (Web ベースのメールや Office Web Apps のような) はユーザー操作に依存するので、まったく異なる方法でブラウザー サブ システムを利用することになります。

下記のグラフは、異なるサイトが IE のサブ システムをどのくらいの割合で費やしているかを示しています。例えば、あるメジャーなニュースサイト (News 1) では、スクリプト 処理と Marshalling (データを整えること) にその大部分を費やしていて、もうひとつのニュースサイト (News 2) では、スクリプト処理とレンダリングに多くを費やしていていますが、Excel Web App ではスクリプト処理にはほとんど費やされていないことが下記のグラフでは読み取れます。

chart of which IE subsystems different websites spend their time in.  The chart shows that each site has a very different allocation of which subsystems they spend time in.

このグラフはそれぞれのサブシステムにおいて費やされたトータル時間の割合 (パーセンテージ) が表示されており、サイト間で費やされた相対的な時間を示したものではないことに注意してください。(そのサイトにおける) 主要なブラウザー サブシステムにフォーカスしており、(アンチ フィッシング機能などの) "フレーム" 機能または、IE プロセス上で動作する (ツールバーや Flash のようなコントロールなどの)  サードパーティ ソフトウェアは、対象ではありません。さらに、ユーザー側のネットワーク速度に依存するようなネットワーク関連の要素も除外しています。また、このサイトのプロファイル (サイトにおけるサブシステムの利用割合) は利用者のシナリオにおいて著しく変化します。例えば、Excel Web App のファイルの読み込みのプロファイルは、シートの選択のプロファイルとは明らかに異なっています。

スクリプト エンジン (スクリプト処理、と言った方がしっくりくるかな?) はブラウザーサブシステムの一つです。スクリプトのパフォーマンスを測るベンチマークはたくさんあります。スクリプト パフォーマンスの共通のツールとしては、Apple’s Webkit team が提供している The SunSpider test があります。下記のグラフは、The SunSpider test を実行した同じマシン上における異なるブラウザー間の相対的なパフォーマンスが示されています。

chart of IE, FF, Chrome and Safari performance of Sunspider test.  The IE9 results on sunspider are competitve with FF 3.6, Chrome4 and the nightly webkit build.

IE7 とメジャーブラウザーの現時点での "最終リリース" 版に加え、メジャーブラウザーの "開発中の" ビルドの最新の Pre-release 版も含めました。Windows 7 ラウンチの一機能としての IE8 をリリースしてからちょうど一カ月ですので、上記の開発中のバージョンの IE はそんなに(Win7上の IE8と)かけ離れたものではありません。 

この (スクリプト処理のパフォーマンスの) 差がこのように小さくなると言うことは、パフォーマンスに寄与する他のサブ システムはより重要な存在になるということですが、現実世界のサイトにおいてそれぞれの違いを感じることは恐らく難しいと言えます。つまり我々が言わんとすることは、我々は引き続きスクリプトの処理のパフォーマンスを向上させることを約束していくということです。

我々は現実世界のサイトで使われているすべてのブラウザー サブ システムのパフォーマンス特性を見ています。我々のゴールは、ベンチマークにおける向上だけではなく、現実世界のサイトに対し全面的に (トータル面で) よりよいパフォーマンスを提供することです。

(Web) 標準対応の進捗。 我々の注目点は、(多くの開発者が使いたいと思うような) 相互運用性のあるリッチな Capabilities (将来性とか対応能力) を提供することです。素晴らしいアプリケーションや体験を創るために、開発者はブラウザーによりよい Capabilities (将来性・対応能力) を求めています; 開発者がサイトを再コーディングをしたり再テストを繰り返さなくても相互運用できるような。標準化プロセスはその目的のために良い意味を示しています。

エンジニアとして、進捗度合いを確認したい時、その機能を深く広く実行させるテスト群を作ります。IE8 では、我々は相互運用度が高い CSS 2.1 を提供し、7,200 を超えるテストケースを W3C に提案しました。 バリデーション (確認用) テストを含まない "標準(技術)" を確実に実装することはとても難しいことであり、またそれを頼りにするサイト開発者にとってもより難しいことです。

( Acid3 のような) いくつかの標準技術の評価ツールは、標準技術に対応するための簡単な手法として広く使われていますが、いくつか不十分な点もあります。Acid3 テストは約 100 の異なるテクノロジー (多くはまだ標準化の "working draft" 過程である) が使われているようですが、多くの最新のケースを含みそしてエラーコンディションがあります。こちらが、最新の IE9 で Acid3 の実行結果です: 

screen shot of ACID3 test showing a score of 32.

サイト開発者が利用している技術を IE がサポートするように改善するたびに、スコアはどんどん上がっていくでしょう。(Web 開発者の視点からみて) より意味のある標準のサポートに関連する例として Rounded Corners (角が丸いボックスを記述する手法) があります。こちらが、その中にあるマークアップに沿って IE9 が Rounded Corners を表示したものです:

screenshot of a box with rounded corners.  each corner is rounded differently.

Web 開発者が問題としている標準サポートにおけるその他の例として、CSS3 selectors を挙げておきます。こちらのテスト ページは Web 開発コミュニティーの方々が協力してcss3.info に挙げているものになります; より詳細なテスト結果の良いイラストと、IE8 をリリースしてからの進捗具合が表示されています:

screenshot of css3.info test page showing many passing test cases.

このようなコミュニティによるテストの取り組みはとても重宝します。大事なことですが、我々はコミュニティや W3C や他のワーキング グループのメンバーの方々と一緒に、我々が CSS 2.1 で取り組んできたような成果を、開発者が重要だと思っている標準化への対応において、成し遂げたいと思っています。例えば、このリンク先では (IE8 を含む) いくつかのブラウザが今日サポートしている HTML5 の Storage API などのテストをしています。

ここで行っている製品とテスト群における仕事は最終的には、開発者が信頼できるような相互運用性の高い (リッチな) プラットフォームを提供するという意味を持ちます。

Web 開発者にブラウザー上で PC ハードウェアと Windows のパワーをもたらす。 Windows における PC プラットフォームとそのエコシステムは、他にないすばらしいハードウェアのイノベーションを提供しています。ブラウザーは Web 開発者のために その光り輝くハードウェア イノベーションの恩恵を受ける(利用す)べきです。

Web 開発者のために我々は多くのアドバンテージを享受できる Windows API の DirectX ファミリーを IE に利用することにしました。まず取りかかったのは、すべてのグラフィックスとテキストのレンダリングを、 CPU (の処理) から Direct2D と DirectWrite を使うグラフィックカード (の処理) へと移しました。グラフィック ハードウェア アクセラレーションを使うということは、グラフィカル色が強いサイトにおいて、CPU 処理よりも早いレンダリング (描画) ができることを意味します。 ( ここでのインタビュー において、いくつかのサンプルのスクリーンキャプチャーをご参照ください。) Web 開発者は、使い慣れた相互運用性のある (Web) 標準を使って今までどおりサイトを構築しながら、ハードウェア エコシステムにおける恩恵のアドバンテージを受けることができるようになるのです。

パフォーマンスの向上に追加して、この技術はサブピクセル ポジショニング ( sub-pixel positioning ) を使ったフォントの品質と読みやすさをも向上させます:

GDI を使った 96 ポイントの Gabriola フォント – Lenovo X61 ThinkPad 上での 100% サイズ (実寸サイズ) –  (ジャギーあり):

text "Direct2D" in 96pt Gabriola font using GDI rendering.  The rendering looks somewhat jagged.

Direct2D を使った 96 ポイントの Gabriola フォント – Lenovo X61 ThinkPad 上での 100% サイズ (実寸サイズ) –  (ジャギーなし):

text "Direct2D" in 96pt Gabriola font using Direct2D rendering.  The rendering looks much smoother than how it is rendered in GDI.

先週、(IE) チームの何人かのエンジニアに Channel 9 がインタビューしました。そのインタビューの様子をこちらのビデオでみれます:

Introduction, and Interoperable Standards

Early look at the Script Engine

Hardware accelerated graphics and text in the browser via Direct2D

まだ製品サイクルの初期段階ですが、我々は開発者のみなさんにこれからの我々のアプローチと進捗を知ってもらいたかった(クリアにしたかった)のです。我々は IE8 の製品サイクルからのフィードバックを活用・反映し、次のバージョンの IE を提供することを約束します。

Thanks,
Dean Hachamovitch
General Manager, Internet Explorer

Update 11/23/09 – IE9 demo from PDC が公開されました。IE のコンテンツは 48分のところから始まります。

広告
 
コメントする

投稿者: : 2009-11-19 投稿先 Internet Explorer

 

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

 
%d人のブロガーが「いいね」をつけました。