始めよう、Windows 8 アプリ開発 (準備編)


前回の投稿からずいぶんと期間があいてしまいましたが、ようやくブログに取り掛かる時間が取れるようになりました。

今回から Windows 8 のかつて Metro スタイル アプリと呼ばれた Windows ストア アプリの開発方法について書いていきたいと思います。

その前に 「Windows ストア アプリってなに?」 という人のために簡単に紹介しておきましょう。

 

Windows ストア アプリケーションとは?

 

Windows 8 には、アプリケーションが動作するためのプラットフォームが 2 つ用意されています。

従来までのデスクトップと、タッチデバイスから操作されること想定した、かつて Metro と呼ばれた Windows 8 から採用された新しい環境です。

Windows 8 Metro

( Windows 8 の新しい UI )

 

この新しい環境で動作するアプリケーションを Windows ストア アプリ と呼びます。

従来のデスクトップ環境と、この Windows ストアアプリが動作する環境は、プラットフォームとして完全に独立しており、そこで動作するアプリケーションは、それぞれ異なる方法で作成します。

 

image

(Windows アプリとデスクトップアプリケーションのプラットフォーム)

 

アプリケーション プラットフォームのもっとも根底には、2 つのプラットフォームから共通で使用される Windows OS コアサービスがあります。

デスクトップ アプリケーションの場合は、この Windows OS コアサービスと言語レイヤーとの間には Win32 API や、.NET Framework が存在し、C や C++ で開発されたネイティブ アプリケーションが動作する際には Win 32 API  を、 C# や VB.NET で開発された .NET アプリケーションは .NET Framework を利用して Windows OS のリソースにアクセスし、動作しています。

いっぽう新しい Windows ストア アプリケーションでは、Windows OS と言語レイヤーの間に、Windows Runtime、通称 WinRT と呼ばれる API セットが用意されます。

逆に言うと、Win 32 API と .NET Framework は用意されていませんので、今まで作成したそれらを使用したコードは動作しません。

では、これらについての サポートは全くゼロかというと、そうでもありません。いくつかの API はサポートされています。

ただし、ほとんどの場合は作り直しが必要です。 詳細については以下のドキュメントをご参照ください。

 

Win32 and COM for Windows Store apps
http://msdn.microsoft.com/ja-JP/library/windows/apps/br205757

Windows ストア アプリ用 .NET - サポートされる API
http://msdn.microsoft.com/ja-JP/library/windows/apps/br230232.aspx

 

Windows ストア アプリケーションの開発言語

 

Windows ストア アプリケーションは、複数の開発言語から、使用する言語を選択することができます。

たとえば、ずっとネイティブコードによる開発をしてきたのであれば、C もしくは C++ を使用してWindows ストア アプリの開発を行うことができます。

同じように、ずっと .NET で開発を行ってきたというのであれば、C# と VB を使用することができます。

ただし、前述したように Windows ストア アプリには Win 32 API や完全な .NET Framework はありませんので、デスクトップアプリケーションのコードのアプリを再利用することは多くの場合できません。あくまでも、開発言語として C、C++、C#、VB が使用できるということです。

開発言語が C、C++、C#、VB である場合、UI 部分は XAML (ザムル) と呼ばれる XML で記述します。

また、JavaScript でも Windows ストア アプリを開発することができます。その場合は UI 部分は HTML + CSS で記述します。

 

image (Windows ストア アプリ 言語と UI 層)

 

ちなみに C# や C++ で作成した dll 内の関数を JavaScript から呼び出して使用することが可能です。

ただし、XAML で記述された UI と HTML で記述されたアプリの UI を混在させて使用することはできません。

 

Windows ストア アプリの製造に入る前にすべきこと

 

Windows ストア アプリの製造 (コーディング) に入る前にすべきことがあります。

それは Windows ストアの審査に合格するための情報を把握しておくことです。

Windows ストア アプリは、デスクトップアプリケーションとは異なり、Windows ストアを介してのみ Windows 8 が動作するコンピューターにインストールされます。

例外に直接デプロイが可能なのは、以下の 2 つ環境のみです。

  • Visual Studio 2012 がインストールされており、起動して開発ライセンスの取得を行ったもの
  • エンタープライズでの利用で、サイドローディングという方法を用いる場合

つまり、Windows ストアの審査に合格しないと、誰にもアプリを使用してもらえないということになります。

アプリの製造に入る前に確認すべきドキュメントは 2 つあります。

まず一つは Windows ストア アプリケーションのデザインに関するガイドラインです。

以下のページ内の索引を読み進めていってください。すべてを覚える必要はありませんが、なにが書かれているかは把握しておいてください。

 

アプリのユーザー エクスペリエンスをデザインする
http://msdn.microsoft.com/ja-jp/library/windows/apps/hh779072.aspx

  
デザインガイドを読み終えたら、実際に審査の際に検証される要件を確認します。

 

Windows 8 アプリの認定の要件
http://msdn.microsoft.com/ja-jp/library/windows/apps/hh694083

 

要件を充分に把握し、要件に合致、あるいは禁止事項に抵触しないようにアプリを設計してください。

画像ツールなどてワイヤーフレームワークを作成して見ると、製造に入ってからの生産性を高め、手戻りを少なくできるでしょう。

 

開発に必要な情報について

 

Windows ストア アプリの開発者向けに、開発に必要な情報へのポータルページが用意されています。

具体的には以下のページです。

 

デベロッパー センター - Windows ストア アプリ 
http://msdn.microsoft.com/ja-JP/windows/apps/br229512

前出のデザインガイドも Windows 8 認定の要件もここから辿れます。

簡単にこのページの使い方を紹介ししておきましょう。

 

ツールの入手

ツールと SDK をダウンロードする をクリックします。遷移した先のページにも 「ツールと SDK をダウンロードする」 という記述があり、その下に [ダウンロード] ボタンがあるので、クリックして Visual Studio 2012 Express エディションを入手します。

Visual Studio 2012 Express エディションは、Visual Studio 2012 の無償のエディションです。

同じページに Windows 8 RTM をダウンロードする というところがあり、ここからは Windows 8 RTM の試用版がダウンロードできますが、試用版につき本来は成果物を得るための開発に使用することはできません。しかし、Windows 8 が正式リリースされる前までは、開発に使用することができます。(※)

(※) もちろん、Windows 8 正式リリース後は、製品版の Windows 8 で開発を行う必要があります。

 

関数やコマンドのリファレンス

デベロッパーセンターのページの右側の [クイックリンク] に文字通り API リファレンス というリンクがあるのでこれをクリックします。

繊維先のページでは使用するテクノロジ (言語) ごとにリンクが分かれているので、使用するテクノロジのリンクをクリックしてさらに詳細な情報を入手します。

 

サンプル コード (アプリ) の入手

Widows ストア アプリには機能を確認するための SDK サンプルが豊富に用意されています。

これらサンプルのプロジェクトを Visual Studio 2012 で開き、ブレークポイントを適切なところに設定しステップ実行することでサンプルアプリケーションの動作を確認することができます。

これら SDK サンプルを入手するにはデベロッパーセンターのページの右側 [クイックリンク] で サンプル というリンクをクリックします。

遷移先のページの右側で、必ず [英語の検索結果を含む] チェックボックスにチェックします。

image

次に画面左で、使用するプログラミング言語にチェックをつけ、[サンプルの検索] ボックスに英語でキーワードを記述し検索を行います。

検索結果にキーワードに合致した SDK サンプルへのリンクが表示されるので、クリックしてサンプルを入手します。

 

開発中に発生する疑問や質問、悩みごとの相談

開発中なに発生する疑問、相談ごとは、デベロッパーセンターのページの右側 [クイックリンク] で フォーラム (英語) (※) というリンクをクリックします。

(※) 今日 (2012/10/10) 現在、リンクの表記は ”(英語)” となっていますが、日本語のフォーラムが既に存在し、表示されます。

フォーラムでは開発者同士のやり取りが活発に行われておりますので、まず、自分の質問の内容が過去に回答されていないか確認し、回答されていないようであれば質問を礼儀正しく投稿してみましょう。

 

 

今回は、「(準備編)」 と題して、実際しに Windows ストア アプリの開発を始める前に知っておいたほうが良い情報についてまとめました。

次回は HTML + JavaScript で開発する Windows ストア アプリの構造について紹介します。

Real Time Analytics

Clicky

Comments (0)

Skip to main content