ユニバーサル Windows アプリ開発 - 概要と典型的な課題への向き合い方
ユニバーサル Windows アプリ開発 from Akira Onishi
NSStudy #3で講演した資料を公開しました。
ユニバーサル Windows アプリは、Windows 8.1と Windows Phone 8.1の両方に対応したアプリです。現時点はWindows ストアと Windows Phone ストアがわかれているため、開発したアプリパッケージは、それぞれのプラットフォーム毎に作成し、それぞれのストアに提出する必要があります。
Windows 8.1とWindows Phone 8.1 は約90%が共通化されており、コードの再利用が行いやすくなりました。一方、フォームファクターに応じた画面デザインは重要で、同じデザインをすべてに適用する方法と、フォームファクターに応じた画面デザインを分ける方法があります。ユニバーサル Windows アプリにより、PC、タブレット、電話で同じアプリを利用できるようになり、エンドユーザーは生活の中のモビリティーで異なるデバイスを活用できます。
Visual Studio 2013 Update 2より、ユニバーサル Windows アプリの開発がサポートされました。開発者は、C#, JavaScript, C++ を利用してアプリの開発を行えます。Visual Basic用にはプロジェクトテンプレートがありませんが、こちらにある情報でユニバーサルWindowsアプリを開発できます。Shared Project Reference Manager 拡張を利用することで、プロジェクト間で共有できるソースコード、アセットをそのまま再利用できます。また、ポータブルクラスライブラリーを作成することで、同一バイナリ―を再利用することができます。
ユニバーサル Windows アプリ開発の主たる課題は3つあります。詳細はスライドを参考にしてください。
・画面の再利用
・プラットフォーム固有の画面スタイルの分離
・プラットフォーム固有のコードの分離
HTML / JavaScript による ユニバーサル Windows アプリ開発については、de:code 2013 DE-020 (Microsoft Virtual Academyにリンクします) を併せて参考にしてください。DE-020では、HTMLを共有し、CSSをプラットフォーム毎に用意する方法を選択しています。
今後もDirectX, Windows ランタイムをコアとした Microsoft プラットフォームは進化していくでしょう。ユニバーサル Windows アプリの開発を出発として、最新の XAML, C#, Visual Basic, C++, Windows ランタイム、.NET Frameworkに触れていただければ幸いです。