このページの本文へ

前へ 1 2 3 次へ

製品版が待ちきれない! Windows 8 Consumer Preview特集 第3回

Metroアプリを動かすWindows 8の新環境 WinRTの秘密

2012年03月06日 12時00分更新

文● 山本雅史

  • この記事をはてなブックマークに追加
  • 本文印刷

Metroスタイルではアプリケーションが全画面で表示される。これらを動かす基盤となっているのが「WinRT」だ

 Windows 8の新UI「Metroスタイル」は、今までのWindows OSとまったく異なるコンセプトを採用している。例えばMetroスタイルアプリケーションは、今までのWindowsアプリケーションが持っていたウインドウという概念を持っていない。全画面表示が基本だからだ。

 このMetroスタイルの基盤となっているのが、Windows 8で導入される新しいアプリケーション実行環境「WinRT」である。特集3回目ではこのWinRTについて解説しよう。

WinRTはWin32よりハイレベルなAPIを提供する

マイクロソフトが公開したWinRTのアーキテクチャー図

 Windows 8ではMetroスタイル環境を作り上げるために、新しい実行環境(フレームワーク)である「Windows Runtime」(WinRT)が用意されている。Metroスタイルアプリケーションを開発するには、なんらかの方法でWinRTを使用することになる。Windows 7までのWindowsでは「Win32 API」を筆頭に、「.NET Framework」などのフレームワークが用意されていた。WinRTはこうしたフレームワークをベースとして、再構築されたものだ。

WinRTの基礎部分は、今までのWindowsで搭載されていたWin32や.NET Frameworkが活用されている。WinRTだけが持つ機能のAPIやUI向けのAPIなど、さまざまなAPIが用意される

 WinRTのコンセプトは、できるだけ「ハイレベルなAPI」を提供することを目的としている。Win32や.NET Frameworkなどで提供されているAPIは、比較的プリミティブなAPIだ。.NET FrameworkはWin32よりもレベル的には高度になっているが、WinRTほど高度ではない。

 「APIがプリミティブ」とか「ハイレベル」と書いているが、プログラミング経験のない人にはイメージしにくいだろう。例えば人間の体を例として、腕を動かす動作を考えるとわかりやすい。腕を動かすには、まず脳の中で「右腕を動かす」と考える。すると脳から脊髄を通じて神経に命令を出し、腕を動かすために複数の筋肉を動かすことになる。腕を動かすだけで、本来ならば膨大な手順が必要だ。

 Win32 APIは非常に細かな手順しか用意されていないため、事細かに手順をプログラミングする必要があった。同じような機能もアプリケーションごとに、プログラミングする必要があった。.NET Frameworkはもう少し手順を簡略化して、共通に利用されるものをAPI化していた。

 WinRTの場合、「ファイルを開く」というAPIを呼び出すと、「マイコンピューター」や各ドライブなどを表示して、選択したフォルダーやドライブのファイル一覧を表示する。クラウドストレージ(SkyDrive)へのアクセスも、同じAPIで処理できる。このように、WinRTはハイレベルなAPIを提供している。

Metroスタイルでファイルを開くと、クラウドストレージのSkyDriveにもアクセスできる。ほかのクラウドストレージへのアクセスも、プラグインでサポートされるようだ

MetroスタイルでSkyDriveにアクセスすると、クラウドに保存されている画像やファイルが表示される。画像はサムネイルが表示されるので便利

 逆に言うと、Win32や.NET Frameworkは、プログラマー自身がカスタマイズして自由にプログラミングできるが、WinRTはマイクロソフトが提供している方式でしかアクセスできない。その分プログラミングは楽になる。

前へ 1 2 3 次へ

カテゴリートップへ

この連載の記事

注目ニュース

ASCII倶楽部

プレミアムPC試用レポート

ピックアップ

ASCII.jp RSS2.0 配信中

ASCII.jpメール デジタルMac/iPodマガジン