本エントリーはWindows Store App Advent Calendar 2013の25日目のエントリーです。
これまでのエントリーでWindowsストアアプリ開発のテクニカルな話題が数多く紹介されてきました。
その最後の締めくくりに相応しいかは悩むところですが、本日はWindowsストアアプリとは何かについて「初めてストアアプリ開発に挑戦する方」向けに書いてみようと思います。
Microsoft社のOS、Windows 8および8.1(サーバー製品も含めるとWindows Server 2012)で動作するタッチ操作に適したアプリケーションです。
あなたが業務アプリ(社内に限定して配布するアプリ)を想定していない場合、基本的にWindows ストアと呼ばれるアプリストアからあなたのアプリはダウンロードされます。
(業務アプリを社内に限定して配布したい場合はサイドローディングという方法を使います)
Windows 8は昨年に発売が開始された新しいプラットフォームです。
まだまだiPhoneのようなたくさんのユーザー、ダウンロード数が得られるわけではないですが、先行者になるチャンスが’ある市場と言えると思います。
Windowsを搭載したPC、タブレット上で動作するアプリケーションを用意する場合いくつかの方法が考えらえます。
Windowsストアアプリはもちろんですが、従来の.NET FrameworkやWPFといった従来のデスクトップアプリケーション。ブラウザ上で動作するWebアプリケーション。
これらにはいくつか特徴があります。
インストーラーからインストールしたり、exeファイルを実行して起動する従来のアプリケーション。
制限が少ない反面、セキュリティ対策やリスキーなコードはしっかりチェックする必要があります。かつてアップデートでHDDの他ファイルを削除したオンラインゲームがあったとか、なかったとか。
○リソース上、セキュリティ上の制限が少ない
○過去の資産が多い
×課金の仕組みが自前
×複数PCでのデータの動機が難しい(Webアプリと組み合わせて)
ブラウザ上で動くアプリケーションです。
主にHTML&JavaScriptで動作しますが、某本格的艦隊シュミレーションゲームがFlashで作られており、久々にFlashが脚光を浴びた気がします。
(Flashが動作するWindows 8タブレットもおかげで脚光を浴びているかな)
○ブラウザさえあればどこからでもアクセス(Windows以外のOSでも)
○凝った動きなどを作るのが難しい(Flashなどの技術もあるがモバイル端末だとFlashが使えない)
×ブラウザによって挙動が異なることがある
×セキュリティ、リソース上の制限が多い
新進気鋭のプラットフォーム。
タッチ向けのUIで基本的に全画面ないし、分割画面動作。APIは8→8.1でかなり充実しました。
端末が売れる→アプリも売れる→アプリが増えたらまた端末が売れるという良い循環が生まれてくれると良いのですが。
○タッチ対応のアプリが作りやすい
○課金の仕組みがストアに用意されている
×セキュリティ、リソース上の制限はWebアプリほどではないが大きい
×Windows8、8.1以前のWindowsでは使えない
×過去の資産が少ない
×Windows 8のタブレットがまだあまり普及していない
×社内配布が難しい
Windowsストアアプリの×が多くなってしまった。
でも、これが現状だと思います。
デスクトップアプリやWebアプリと比較された場合にストアアプリがコンペに勝ち残るケースは少ない。
とはいえ、×印のいくつかはWindowsストアが新しいプラットフォームだということに影響している。Windows 8の時だと×印をつけていたであろういくつかは一年立った8.1でいくつか解決されている。
○外部デバイスの利用
○ストアアプリが起動したままで終了させることができないキヨスクモード(Assinged Access、日本語だとアクセス割り当てというらしい)
Winows 8の端末もSurface 2や8インチの端末は売れ行きが好調のようだ。
これらはタブレットとして利用される端末だ。
時間とともにタブレット用途のWindows端末が増えて行けば、利用できる資産は増え、過去のWindowsでは動作しない点や、普及していないという問題は解消されるだろう。
Windowsストアアプリは指でタッチ操作することを想定している。
なからたくさんの入力フォームはユーザーにストレスを与えてしまう。だからシンプルなタッチ操作やスワイプで情報を閲覧できるコンテンツ消費型のアプリが粉まれる・・・っていうのはよく聞くけれど、ちょっと面白味がない。
まずはWindowsストアを眺めて、色々なアプリを触ってみよう。しばらくすると同じような操作感のアプリになじんでくると思う。そこから、その馴染んだ先から一歩ひねったアプリをぜひ作ってほしい!!
ストアアプリの雰囲気をつかんだら、iPhoneやAndroidのストアも眺めて見よう。
Windowsストアに無いものを参考にして、ぱく・・・アレンジした自分のアプリを考えてみよう。
ゲームが好きなら、ゲームを作ってみよう。
ほかのプラットフォーム同様注目を集めやすいジャンルだから。
Windows 8のストアアプリの入門書は書籍にたくさんあります。
手前味噌ですが、入門者向けと、基礎がわかった開発者向けの2冊の本があります(ごめんなさいこの項は広告エリアですw)。
プロのためのWindowsストアアプリプログラミングガイド 新システムへの対応とプログラム実装のポイント
だけど最新の8.1の書籍はあまりないからWebで検索するのが良いと思う。
たとえばMicrosoftのWebサイトMicrosoft Virtual Academyでは以下のようなコースがあります。
C# を使用した Windows ストア アプリ開発概要ジャンプ スタート
C# を使用した高度な Windows ストア アプリ開発ジャンプ スタート
XAML で作る Windows ストア アプリ/各国語版の作成
Windows 8.1 UX Design Jump Start
私も今年末から気持ちを入れ替えて8.1ネタをたくさん出していきます!!
あなたが学生なら以下のエントリに目を通してみてください。
ストアアプリを開発しようという学生の役に立つ情報を色々と紹介してみました。
Windows Store App Advent Calendar 2013は今日が最後の記事だけど、ストアアプリを触ってみたら2014年のAdvent Calendarでぜひ記事を書いてください。
ちなみにストアアプリの役に立ちそうなAdvent Calendarはほかにもこんなのがありました。
これらは技術レベルが高いものだから無理に理解しようとせずに、つまみ読みするぐらいが良いと思います。
Windowsストアアプリは、現在成長中でまだ足りない部分があるし、制限があり不自由を感じることもあります。
そのかわりに生産性の高い環境と、敷居の低さがあります。
iPhoneのストアほど盛況ではないですが、だからこそ先行者利益を得る可能性があります。
それに成熟したプラットフォームは面白くないですよね!!
2013年のAdvent Calendarの最後に、2014年から新しくストアアプリ開発に足を踏み入れる人の最初の一歩を助けるエントリで終わるのは、書いてみて悪くないなと思い始めました。
2014年、Web、コミュニティ、イベントなどで皆様に会えるのを楽しみに、記事を終わろうと思います。
追伸:あっ、忘れてました。ストアアプリを開発すると、よりディープな世界、端末ないのに熱く燃え上がるWindows Phoneの世界にも簡単に足を踏み入れられるようになりますよ!!
Please give us your valuable comment