本プレゼンテーション ( 以下、本書 ) で提供されている情報は、本書が 発表された時点における Microsoft の見解を述べたものです。市場 ニーズの変化に対応する必要があるため、本書は記載された内容の実 現に関する Microsoft の確約とはみなされないものとします。また本 書に記載された情報の正確さについて、保証するものではありません。 本書は情報の提供のみを目的としており、明示または黙示に関わらず、 本書について Microsoft はいかなる保証をするものでもありません。 本書に記載されている機能名や用語の日本語訳は、あくまでも暫定的 なものであり、将来変更される可能性があります。
Windows Runtime とは
デバイス センサー地理位置情報ポータブル NF C 通信 & データ コントラクト XML Web SMS ネットワーク 通知 ローカル & クラウド ストレージ ストリーム バックグラウンド 転送 ユーザー インターフェイス HTML5/CSSXAMLDirectX コントロール 入力アクセシビリティ印刷 データ バインド タイル SVG Metro スタイル アプリの API 基礎部分 アプリケーション サービス 認証暗号化 グローバリ ゼーション メモリ管理スレッド / タイマー メディア 視覚効果 再生 リモート 再生 キャプチャ
HTML JavaScript デスクトップ アプリ Win32.NET/ SL Internet Explorer Windows カーネル サービス JavaScript (Chakra) C/C++ C# 、 VB Metro スタイル アプリ 通信 & データ アプリケーション モデル デバイス & 印刷 Windows Runtime API グラフィック & メディア XAML HTML/CSS C C++ C# VB Internet Explorer システム サービス ビュー モデル コン トローラー カーネル
Windows メタデータ & 名前空間 言語プロジェクション Windows Core Windows Runtime Core XAML ストレージ … ネットワーク UI 選択ツールメディアコントロール Metro スタイル アプリ ランタイム ブローカー 言語サポート (CLR 、 WinJS 、 CRT) Web ホスト (HTML 、 CSS 、 JavaScript)
Windows Metro スタイル アプリの内部構造
Windows メタデータ & 名前空間 言語プロジェクション Windows Core Windows Runtime Core XAML ストレージ … ネットワーク UI 選択ツールメディアコントロール Metro スタイル アプリ ランタイム ブローカー 言語サポート (CLR 、 WinJS 、 CRT) Web ホスト (HTML 、 CSS 、 JavaScript)
文字列型 HSTRING 複数言語でのコピーを回避 基本型 INT32 、 UINT64 * ポインターは限定的に許可 列挙体 enum AsyncStatus フラグまたは非フラグのスタイル 構造体 struct Rect; 文字列を含むことが可能、 インターフェイスは不可能 単純配列 INT32 [] ごく基本的なコレクション用 インターフェイス IInspectable メソッドはインターフェイスで定義 ジェネリック インターフェイス IVector ジェネリック型のインターフェイス ランタイム クラス Windows.Storage. StorageFile インターフェイスをバインドして クラスを作成
Windows メタデータ & 名前空間 言語プロジェクション Windows Core Windows Runtime Core XAML ストレージ … ネットワーク UI 選択ツールメディアコントロール Metro スタイル アプリ ランタイム ブローカー 言語サポート (CLR 、 WinJS 、 CRT) Web ホスト (HTML 、 CSS 、 JavaScript)
Shell32.dll オブジェクト アクティベーション ストア ( レジストリ ) Windows メタデータ ( ディスク )
オブジェクト Windows メタデータ C++ アプリ プロジェクション CLR C#/VB アプリ プロジェクション HTML アプリ Chakra プロジェクション
開始 アプリが オブジェクト 作成を依頼 名前を RoActivateInstance に渡す カタログを使用して DLL を検索 DLL を読み込む DllGet- ActivationFactory を呼び出す 実装コードにより オブジェクトが 作成される IInspectable が 返される プロジェクションが ラッパーを作成 ( メタデータを使用 ) オブジェクトが ラッパーに バインドされる アプリにラッパーが 返される 終了 アプリ プロジェクション WinRT オブジェクト マネージャー WinRT オブジェクト
オブジェクト Windows メタデータ v8 アプリ プロジェク ション オブジェクト Windows メタデータ v9 アプリ プロジェク ション
Windows メタデータ & 名前空間 言語プロジェクション Windows Core Windows Runtime Core XAML ストレージ … ネットワーク UI 選択ツールメディアコントロール Metro スタイル アプリ ランタイム ブローカー 言語サポート (CLR 、 WinJS 、 CRT) Web ホスト (HTML 、 CSS 、 JavaScript)
コレクション IVector 、 IVectorView 、 IMap 反復子、コレクション、および イベントのクロス言語 デリゲート delegate AsyncActionCompletedHandler コンテキストをカプセル化して、 オブジェクトにコールバック イベント IApplicationLayout::LayoutChange d コールバック受信者のリスト プロパティ セット interface IPropertySet さまざまな型を持つ項目のリスト 非同期イン ターフェイス ReceivePropertiesOperation ブロックせず、結果を後から取得 する手段 コントラクト Windows.ApplicationModel. DataTransferManager アプリを Windows 拡張ポイント に接続
配列 連想コレクション C++ アプリ STL 形式の プロジェクション CLR C#/VB アプリ IEnumerable (T) 形式の プロジェクション HTML アプリ Chakra JavaScript プロジェクション
アプリ アプリ コード Windows UI オブジェクト Windows オブジェクト Windows オブジェクト
RuntimeBroker.exe Windows Runtime オブジェクト アプリ プロジェク ション プロキシ