Lap around the Windows RuntimeWindows Runtime

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