ここから本文です

モバイルは諦めモード? 1年で変わったWindows 10のモダンアプリ戦略

5/25(木) 6:25配信

ITmedia PC USER

 2017年5月上旬に米ワシントン州シアトルで開催された米Microsoftの開発者会議「Build 2017」では、現状のサマリーを含む今後の同社の最新技術に関するトピックが多数紹介された。本連載では何回かにわたって、ここでの主要トピックを取り上げていく。

【この変換ツールでWindowsストアに並ぶようになったアプリ群】

 今回は、過去にも度々取り上げたWindows 7以前のデスクトップアプリケーションをWindows 10以降の“モダン”な実行形式である「UWP(Universal Windows Platform)」アプリに変換するツールの「Desktop Bridge(Project Centennial)」に関する話題だ。

●Windows 10 SとDesktop Bridgeの密接な関係

 Build 2017では「Bring your desktop apps to UWP and the Windows Store using the Desktop Bridge」というセッションでDesktop Bridgeが解説されたが、ここでのセッションスライドの内容や基本的なコンセプトはBuild 2016での発表とほぼ同じだった。

 ただ1年が経過したことで、実際にDesktop Bridgeを使ってデスクトップアプリケーションから変換されたUWPアプリがWindowsストアに登録され始めたほか、Microsoftの戦略変更によって幾つかの点でアップデートが行われている。

 Desktop BridgeがProject Centennialの名前で発表されたころ、当初Microsoftがこのツールで意図していたのは、充実度の面で見劣りがしていたWindowsストア内のUWPアプリを拡充させつつ、Win32 APIや.NET Frameworkの既存デスクトップアプリケーションに関して、同APIやフレームワークを使わずに、デバイスに依存しないモダンなアプリへと移行していくための手段とすることだった。

 そのため、1年前のセッション内での解説は、5段階あるステップの最後で既存のデスクトップ向けコードを廃した“完全形”のアプリを目指すものとなっている。

 しかし、Microsoft内でUWPの定義がひそかに変更され、もともと「PCでもモバイルでもゲーム機でも共通して動作するアプリ」だったものが、現在では「APPXファイルとしてパッケージされたアプリ」となり、Win32コードを含んでいるためにPCでしか実行できないアプリであっても「UWP」と呼ぶようになっている。

 さて、Build 2017でアップデートされた部分の1つとしては、新たに「Windows 10 S」がターゲットOSとして追加された点が挙げられる。

 以前にも説明したように、Windows 10 Sは「Windowsストア経由のアプリ以外実行できない」という制限を設けたWindows 10の機能制限版だであり、基本的にはWin32 APIを含めて共通のコード体系を持っている。

 つまり、「Win32コードを含んでいるため、Windowsストアで配布されるUWPアプリながら、PCでしか実行できない」というDesktop Bridgeを明確に意図した作りとなっている。また単純に、デスクトップアプリケーションをUWPアプリに変換しただけでも、アップデートの自動化のほか、レジストリや共有ファイルの分離によるクリーンインストールの容易さなど、非常に多くのメリットがある。

 Windowsストアの利用に個人アカウントが必要だった点も改善され、アプリの配布手段として、使い勝手は大きく向上した。

 実際、Build 2016でデモとして紹介されたEvernoteをはじめ、幾つかのメジャーなデスクトップアプリケーションがDesktop Bridgeを通じてWindowsストアに登場した。また、Microsoft自身もデスクトップ版OfficeをDesktop Bridgeで変換して、Windowsストアに登録している。

 このUWPアプリ版OfficeはWindows 10 Sをターゲットとしているが、筆者をはじめとして日々の作業に使うツールがごく限定されたユーザーにしてみれば、「これで十分」というタイミングが近づきつつある。

●消されたDesktop Bridgeのモバイル対応

 Desktop Bridgeの基本方針として、既存の古いコードをより“モダン”なコードで置き換えていくというスタンスは変わっていないが、一部で興味深い変更点がみられる。

 例えば、1年前のセッションのスライドではStep 4の部分でメインとなるコードは「Classic Windows App」だったが、2017年のセッションでは「Universal Windows App」となり、位置関係が逆転している。

 メインとなるのはXAML UIをベースとしたモダンなコードで、既存コードもそのまま流用が可能だとしている。ただしこの構成の場合、動作可能なデバイスはPCのみ(Windows 10 S含む)という注釈が付く。

 そして、2017年版のStep 5における記述で気になる点は、「More .NET support」「More Win32 support in UWP」という部分だ。これは従来のデスクトップアプリケーションでサポートされていた機能をUWP側が全てサポートしているわけではないという部分に触れたものになる。前述のStep 4での記述と合わせて、旧式のデスクトップアプリケーションを可能な限りモダンなコードへと引き上げたいという意思を強く感じる。

 Steamのように配信プラットフォームの問題でWindowsストアと競合するケースはあるものの、基本的に全てのWindowsプラットフォームの開発者をUWPへと誘導したいのだと考える。

 だが、今回の2017年版スライドで最も興味深い記述は、Desktop Bridgeがターゲットとするフォームファクタから「モバイル」が除外されている点にある。2016年版では「PC」「Mobile」「Xbox One」「HoloLens」だったものが、2017年版では「My converted app will run on Hololens and Xbox」とのみ記述されているのだ。

 少なくとも、マシンパワーや利用者層を考慮しても、モバイルは既存アプリケーションのUWP化で重要な位置を占めていたはずだが、Microsoft自らがWindows 10 Mobileを対象プラットフォームとして挙げないのは、昨今の同社の動きを具体的に反映させた出来事だろう。

 まとめると、Desktop Bridgeの目的は主に2点に集約される。

・デスクトップアプリケーションのUWP+Windowsストアへの移行
・既存コードを将来のプラットフォームでも有効活用すること

 EvernoteやOfficeのように、生産性アプリケーションをWindowsストアを通じて広く利用可能にする仕組みでもあるが、同時に特定業界や企業といった狭い範囲で利用されるアプリケーションを延命するための手段にもなる。

 また、一度Desktop Bridgeを通じてUWPに変換されたアプリケーションは二度と戻せず(変換元のコードを残してあれば別だが)、Windows 10より前のバージョン、具体的にはWindows 7などの現在企業ユースでメインの環境では動作できなくなる。

 片道切符というわけだが、2020年に迫ったWindows 7の延長サポート終了を前に、Microsoftが企業ユーザーに残した救済パスと言える。

[鈴木淳也(Junya Suzuki),ITmedia]

最終更新:5/25(木) 6:25
ITmedia PC USER