Windows* 8 開発向け Ultrabook™ 機能の互換性

同カテゴリーの次の記事

Ultrabook™ およびタブレット向け Windows* 8 センサーの開発ガイド

この記事は、インテル® デベロッパー・ゾーンに掲載されている「Ultrabook Feature Compatibility Matrix for Windows 8 Development」の日本語参考訳です。


概要


この記事では、Windows* 8 デスクトップ・アプリケーションおよび Windows* ストア向けアプリケーションの開発に役立つ基本情報に関して説明します。

まず、モバイルデバイス (スマートフォン、タブレット) および Ultrabook™ デバイス向けアプリケーションで利用できるプログラミング・モデルを理解する必要があります。また、既存のアプリケーションを移植する場合も、新しいアプリケーションを作成する場合も、Windows* 8 対応アプリケーションの開発で利用可能な開発ツールとプログラミング環境を知っておく必要があります。

ここでは、既存のアプリケーションの可搬性だけでなく、新しいアプリケーション開発の方向性を決定する際に役立つ情報を紹介します。

はじめに


Windows* 8 を実行する Ultrabook™ では (特に、第 3 世代インテル® Core® プロセッサーを搭載している場合)、多くの新機能を利用できます。Windows* 8 の開発フレームワークでは、2 つの新しいアプリケーション・モードが導入されています。開発者は、Windows* 8 デスクトップまたは Windows* ストア (新しい UI 環境) 向けにアプリケーションを作成できます。デスクトップ・アプリケーションの開発はこれまでとあまり変わりませんが、Windows* ストア・アプリケーションの開発環境には新しい要件がいくつかあります。主要なツールと開発環境を使用して、両方の環境 (デスクトップと UI) で Ultrabook™ の機能を利用するアプリケーション開発について考えてみましょう。

Windows* 8 のアプリケーション・モードに対するアーキテクチャー・サポート

使用する開発言語と Windows* 8 のアプリケーション・モードに応じて、利用できる機能は異なります。図 1 の開発環境は、Microsoft* Developer Network で紹介されているものです。WinRT API を使用するアプリケーションは、Windows* ストア・アプリケーションと呼ばれています。Windows* ストア・アプリケーションを作成する唯一の方法は、Microsoft* Visual Studio* 2012 のプロジェクト・テンプレートを使用することです。デスクトップ・アプリケーションの作成にはこのような制限はありません。


図 1Windows* 8 アプリケーションで可能なハイレベルの開発環境

既存のアプリケーションを Windows* 8 環境に移植する場合は、現在使用しているツールを利用できることと、実装する機能がサポートされていることを確認しなければいけません。例えば、Unity* はアプリケーション開発者の間で非常に人気のあるゲームエンジンですが、まだ Windows* 8 のすべての機能に対応していません。

さらに、図 1 では WinRT とデスクトップ API の間にはクロス機能が全く存在しないように見えますが、実際は、次の WinRT API が Windows* 8 デスクトップ環境と共有されます。

  • Windows.Sensors (加速度計、ジャイロスコープ、環境光センサー、傾きセンサー…)
  • Windows.Networking.Proximity.ProximityDevice (NFC)
  • Windows.Device.Geolocation (GPS)
  • Windows.UI.Notifications.ToastNotification
  • Windows.Globalization
  • Windows.Security.Authentication.OnlineId (LiveID 統合を含む)
  • Windows.Security.CryptographicBuffer (バイナリー・エンコーディング/デコーディング関数)
  • Windows.ApplicationModel.DataTransfer.Clipboard (Windows* 8 クリップボードへのアクセスと監視)

デスクトップ・アプリケーションで WinRT API を利用する方法については、Xavier Halladeのブログ「Using Windows* 8 WinRT API from desktop applications (デスクトップ・アプリケーションでの Windows* 8 WinRT API の使用)」 (英語) を参照してください。

次の表は、主要な言語と開発モードで利用可能な機能の一覧です。リンクをクリックすると詳細を参照できます。

Windows* 8 デスクトップ・アプリ Windows* ストアアプリ
機能/ツールセット C++ C#/VB JavaScript/HTML5 Unity* C++、C#、VB と XAML、JavaScript/HTML5 Unity*
インテル® ワイヤレス・ディスプレイ ○ (ブラウザープラグイン) × × ×
タッチ・ジェスチャー
傾きセンサー (加速度計、傾斜計、ジャイロメーター) 対応予定
光センサー 対応予定
OpenGL* (WebGL) ○ (WebGL) × ×
DirectX*
インテル® スマートコネクト ×
NFC
GPS
Intel AppUp® センター × ×
Windows* ストア × × × ×

Windows* ストア・アプリケーションは、ソフトウェア開発者に大きな変化をもたらすでしょう。Windows* ストアは全く新しいインターフェイスなので、利用するツールがこの環境をサポーしていることを確認する必要があります。表 2 に Windows* ストア・アプリケーションの開発要件を示します。Microsoft* デベロッパー・センターの「Windows* ストアアプリの概要」もご覧ください。

インテル® スマート・コネクト・テクノロジー (ISCT) には開発環境固有の API がありません。ISCT を利用するには、BIOS で ISCT を有効にし (通常はデフォルトで有効)、OEM のユーザー・インターフェイスで設定する必要があります。ISCT に最適なアプリケーションとアプリケーションで ISCT を実装する方法については、「Developing for Intel Smart Connect Technology (インテル® スマート・コネクト・テクノロジー向けの開発)」 (英語) を参照してください。

表 2Windows* ストア・アプリケーションの開発言語について

言語サポート 入門ガイド 利点/説明
JavaScript および HTML JavaScript を使った初めての Windows* ストアアプリの作成 標準に準拠した最先端の Web テクノロジーを利用できます。HTML マークアップ、JavaScript、および CSS3 を使用してネイティブの Windows* アプリケーションを作成できます。Visual Studio* Express 2012 for Windows* 8 は、アプリケーション開発を合理化し、高速化するアプリケーション・テンプレート・ライブラリーも提供します。
C# または Visual Basic* と XAML C# または Visual Basic* を使った初めての Windows* ストアアプリの作成 WinRT API は、JavaScript、C++、C#、Visual Basic* を含む、サポートされているすべての言語で利用できます。また、.NET Framework や Windows* C ランタイム・ライブラリーのような Microsoft* のほかのプログラミング・フレームワークにアクセスすることもできます。Windows* デスクトップ・アプリケーションは、Win32* と .NET API に加えて、新しい Windows* ランタイム機能のサブセットも利用できます。
C++ と XAML C++ を使った初めての Windows* ストアアプリの作成 新しい Windows* 8 のコントロールはすべて XAML で実装されています。ネイティブの C++ 開発者は、XAML を利用してインタラクティブな UI を作成できます。
C++ と DirectX* DirectX* を使った初めての Windows* ストアアプリの作成 優れた柔軟性とシステムリソース (特に、グラフィック・デバイス) へのアクセスを提供します。

Windows* 8 向けアプリケーション開発に関する詳細は、『Windows* 8 開発者向け製品ガイド』 (http://msdn.microsoft.com/en-us/windows/apps/hh852650.aspx) を参照してください。また、Windows* 8 App Samples から C++、C#、JavaScript、および VB.Net のサンプルコードをダウンロードできます。

次に、主要な開発ツール/インターフェイスの互換性について見てみましょう。

Windows* 8 ストアアプリに関する考慮事項


  • Win32* API: ほとんどの Win32* API は Windows* 8 UI に対応していません。また、既存の多くのツール/ライブラリーには依存関係があります。
  • WinRT API: 既存の PC アプリケーションおよびインテルのツールは新しい API を認識できません。
  • グラフィックスおよびメディア: テクノロジーのサブセット (DX11.1、HMFT、DXVA) のみをサポートしています。
  • アプリケーション・モデル: インテルのツールは新しいスレッド化モデルを認識できません。
  • Windows* 8 ストア: 証明書により、Windows* 8 UI アプリケーションがバリアを超えて API/ライブラリーにアクセスしないように防ぎます。
  • Windows* ストア・アプリケーションは Windows* 8 上でのみサポートされています。(Windows* 7 または Windows Server* 2012 ではサポートされていません。)

表 3主要な開発ツールの互換性

Windows 8* デスクトップ・アプリ Windows* ストアアプリ
プログラム可能な GFX- OpenGL* ×
プログラム可能な GFX – OpenCL* ×
プログラム可能な GFX-OCL, CM ×
DirectX* Windows* 8 UI で Win32* DX11 GFX サポートを利用可能 Win32* DX11 GFX サポート(ゲームおよびメディア)
Microsoft* コンパイラー Win*32 のフルサポート WinRT のフルサポート: XAML/C++、XAML/VB+C#、HTML/JavaScript
インテル® VTune™ Amplifier 全機能をサポート WinRT アプリで一部の機能をサポート。スレッドモデルは未サポート。WinRT アプリの hotspot/ロック/コンカレンシー解析は未サポート。WinRT API は WIP をサポート。
インテル® グラフィックス・パフォーマンス・アナライザー (インテル® GPA) 次を除く全機能をサポート: IE10、WinRT アプリ解析、Frame Analyzer での DX10 (15.28 ドライバー + 新しい OpenCL* SDK) × (WinRT はインストルメンテーションを未サポート)
Microsoft* xPerf/xRay 全機能をサポート システム全体でサポート。ただし、一部制限あり (ETW データ収集はコマンドラインのみ。Viewer Desktop UI のみ)。
インテル® Performance Bottleneck Analyzer (インテル® PBA、別名 xIF) サポート。デスクトップ・アプリ解析をサポート。デスクトップでビューアをサポート。 WinRT で一部機能をサポート (スレッドモデル、WinRT データ、JIT は未サポート)
開発環境 (Visual Studio*、Eclipse*) 一部サポート
HTML 5 のハードウェア・アクセラレーション
DirectX* 11.1 サポート ○ (C++)
アプリから購入 × ○ (アプリのフルバージョンを購入した場合)

関連情報


インテルの関連ブログ


著者紹介

Gael Hofemeier はインテル社のデベロッパー・リレーション部門のビジネス・クライアント・テクノロジー担当のソフトウェア・エンジニア。ニューメキシコ大学で数学の学士号と MBA を取得しています。趣味は、ハイキング、サイクリング、写真です。

 

Intel、インテル、Intel ロゴ、Intel Core、Ultrabook、VTune は、アメリカ合衆国およびその他の国における Intel Corporation の商標です。

© 2012 Intel Corporation. 無断での引用、転載を禁じます。

* その他の社名、製品名などは、一般に各社の表示、商標または登録商標です。

OpenCL および OpenCL ロゴは、Apple Inc. の商標であり、Khronos の使用許諾を受けて使用しています。

OpenGL は、アメリカ合衆国および / またはその他の国における Silicon Graphics, Inc. の商標または登録商標です。

パフォーマンスに関する注意事項

* パフォーマンスおよびベンチマークの結果に関する詳細は、www.intel.com/benchmarks (英語) を参照してください。

コンパイラーの最適化に関する詳細は、最適化に関する注意事項を参照してください。

関連記事