ニュース

Windows 7時代のアプリを「10」対応にするメリットは?Build 2016(2/2 ページ)

Windows 10世代のモダンなアプリより、Windows 7以前のデスクトップアプリを好んで使っているユーザーは少なくないだろう。Microsoftはそんな旧世代アプリのモダン化を訴えているが、どのようなメリットが得られるのだろうか。

前のページへ |       
※本記事はアフィリエイトプログラムによる収益を得ています

時間をかけて既存コードを「モダン化」していく

 このように、Desktop App Converterの自動変換ではデスクトップアプリケーションそのものをUWPアプリにはできないものの、Windows 10以降で提供される新機能やアプリの実行基盤をそのまま活用可能になる。

 恐らくMicrosoftは、このツール提供を皮切りにアプリケーション開発者やユーザーらにUWPの活用を促し、将来的に古いデスクトップアプリケーションのコードを徐々にUWPアプリへと移管していくのが狙いとみられる。時間はかかるものの、2020年に延長サポートが終了するWindows 7からWindows 10への移行をにらんだ施策と言えるかもしれない。

 さて、AppXパッケージに自動変換された直後の状態では、動作的には通常のデスクトップアプリケーションと何ら変わりない。しかし、若干のコード追加でユニバーサルアプリの特徴である「ライブタイル」「通知」「Cortana」といった機能が利用できる。この辺りは非常に簡単なので、すぐにでも取り掛かれるだろう。

advertisement

ユニバーサルアプリとしてパッケージングが行われたことにより、ベースはデスクトップアプリケーションながら「UWP固有のAPI」の利用が可能になる。具体的には「ライブタイル」「通知サービス」「Cortanaの呼び出し」といった機能が、若干のコード追加で可能になる

ライブタイルにメッセージを出すコードを追加するデモが行われた

ライブタイルにメッセージを出したところ。スタートメニューのタイルに「Hello Build!!!」のメッセージが表示されている

 変換されたAppXパッケージは、仕組み的にはデスクトップアプリケーションそのものなので、それ単体でも問題なく動作するのだが、Windows 10で実際に利用しようとすると、幾つか不都合な部分が出てくる。UIまわりのほか、バックグラウンドタスクで呼び出されるためのトリガーの設定などが典型的な例だ。

 そこでXAMLでフロント部分のUIを作ったりするわけだが、これらはパッケージ内でUWPアプリのコードとしてデスクトップアプリケーションのコードとは別に併存することとなる。両者は独立したプロセスとして同時に動作しており、AppServiceを通じて互いに通信可能だ。


AppX形式で配布されるパッケージには、Win32/.NETコードとUWPアプリのコードが共存でき、それらが互いにAppService経由で通信を行うことで連携が可能になっている

例えば、XAMLベースのUIでフロント画面やバックグラウンドのトリガー、さらにUWPで利用可能な基本コンポーネントを組み合わせてUWPアプリを構成しつつ、基本となるロジックは既存のWin32/.NETコード……といった仕組みを利用可能だ。

このデモは2つのコードが併存して同時に動いている様子を示している

 これを推し進めていくと、最終的にはデスクトップアプリケーションのコード全てをUWPアプリで置き換えることが可能になるかもしれない。そのとき初めて、変換されたAppXパッケージは「UWPアプリ」として幅広いプラットフォームで利用可能になる。

 もっとも、Windowsデスクトップでの利用を想定して構築されたアプリケーションがWindows 10 MobileやXbox Oneなどでそのまま利用できて、どれだけのメリットがあるかと問われると難しいところだ。

 しかし、将来的に「よりモダンなアプリ」の利用やプラットフォームへの移行を想定していた場合、一部の既存コードを流用しつつ、UWPアプリを構築できるDesktop App Converterの仕組みは有力な選択肢となる。


このような形で、少しずつデスクトップのコードをUWPへと移管していく

最終的に全てのコードがUWPベースとなることで、Windows 10 MobileなどのWin32サブセットを持たないプラットフォームでもアプリの動作が可能となる

Windows 10 Mobileにアプリを対応させたデモの様子

→・次回記事:Microsoftが「会話Bot」に力を注ぐ理由

←・前回記事:Windows 10公開から1年後の姿はどうなる?

AMP 非対応のコンテンツです。こちらからご覧ください。

前のページへ |       

Copyright © ITmedia, Inc. All Rights Reserved.