UWP ことはじめ

私はいろいろなHello Worldしなきゃいけないのですが、取り急ぎやらなくちゃいけないリストのトップ10に入っているのがこのUWPことUniversal Windows Platformです。

UWPにはいろいろな特徴があるのですが、ざっくりひとことでいうと「OSではなくデバイスファミリを対象に動作可能な単一のアプリ実装テクノロジ」というところでしょうか。(ひとことで言いづらい。)

Windows 10(まだ、時々手をつなぐぐらいの清い仲です。)で実装されたのですが、概要を勉強しているだけでも結構ムネアツなのです。

 

UWPの最大メリットは 「OSとの分離」 だと思います。

これまでのWindowsアプリはOS側のDLLやレジストリに爪痕を残して、その部分と連携して動作していました。なので、OSのバージョンがXPから7、7から8など大幅に変わるとそのままでは動作しないことも数多くあり、アプリの寿命がOSの寿命に引きずられることもありました。

そのため、OSとの依存性を断ち切る手段として、古くはThinstall、今でいうVMware ThinAppのようなアプリ仮想化を行うサードパーティーのソリューションが存在していたりしました。

レガシーアプリをなんのエンハンスもないのにOSのためだけに可搬性をよくしたいという話であればこのようなソリューションは有効だと思いますが、前向きなソリューションとはいいがたいです。(なんだか元カレをDisっている気分です…)

UWPはアプリをインストールするときに 「APPX」 パッケージを使うのですが、これが前述のThinAppでカプセル化するのに近い特性をもっていて、 「OSとの分離」 がなされています。

ということは、レガシーなアプリは可搬性を担保するためにサードパーティのソリューションが必要ですが、これからつくるアプリはその必要がなくなるということを示唆しています。

これって、すごくないですか?

私は正直なところ、驚きました。

 

MSDNライブラリにわかりやすいドキュメントがありますので一緒にはじめませんか?
https://msdn.microsoft.com/library/windows/apps/dn726767.aspx

 

※コミュニティにおけるマイクロソフト社員による発言やコメントは、マイクロソフトの正式な見解またはコメントではありません。

本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。