連載
» 2015年05月20日 15時00分 公開

鈴木淳也の「Windowsフロントライン」:「Windows 10」は従来型デスクトップアプリも次世代へ導けるか? (3/4)

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

デスクトップアプリをWindows 10世代のUWPアプリに変換する意味

 さて、4つの開発者向けプロジェクトで最後に紹介するのが「Project Centennial」だ。いわゆる旧来のWin32 APIや.NET Framework向けに記述されたアプリケーションを、Windows 10世代のUWPアプリとして動作させる(変換する)仕組みとなっている。

Project CentennialはClassicと呼ばれる従来型デスクトップアプリケーションをUWPアプリへと変換する

 あらかじめ前置きしておくと、筆者は実際にProject Centennialの動作を確認していないため、これがどの程度の精度と簡易さを持って変換可能かは図りかねる部分がある。また常駐やレジュームに絡む動作など不明な部分があり、この辺りは追って連載中でフォローしていきたいと思う。

 今でも従来のWindowsで動作していたデスクトップアプリケーション(Classicアプリケーション)をお気に入りとして、Windows 8以降のデスクトップ環境で愛用しているユーザーはいるだろう。「Windows 10でも従来のデスクトップアプリケーションが動くのだから、それでいいんじゃないの?」と思うかもしれないが、従来のアプリケーション実行モデルは多くの問題を含んでいるのも事実だ。

 ざっと箇条書きすると、以下が挙げられる。

  • Windows ROTが発生しやすい
  • レジストリの肥大化と分散化
  • 完全なアンインストールが難しい
  • アプリケーション動作のサンドボックス化や管理が難しい

 Windows ROT(腐敗)とは、アプリケーションの複数インストールや継続利用によりレジストリの肥大化や多数のファイルでシステム領域が圧迫され、Windowsの動作が遅くなる現象のことを指す。Windowsを使っていてROTを経験していないユーザーは少ないだろう。これはレジストリの肥大化から主に発生し、多数のファイルがシステム領域にインストールされることは、アプリケーションのアンインストールが難しくなることも意味する。

 またライフサイクルが完全に管理されるUWPアプリに比べ、できることの多いデスクトップアプリケーションはOS管理上も問題となる。UWPでは「AppX」という単一パッケージでアプリを管理する方式であり、Windows ROTの原因となる現象の数々をあらかじめ回避できる。これがデスクトップアプリケーションではなく、UWPでのアプリ配布をMicrosoftが勧める理由の1つだ。

従来型デスクトップアプリケーションをUWPに変換する最大のメリットは「Windows ROT」にある

 Windows 10世代のWindowsストアではデスクトップアプリケーションの配布も可能になり、実際にBuild 2015の基調講演ではAdobe Photoshop ElementsとPremier Elementsが同ストアを介して提供されることが発表されている。これが従来型のデスクトップアプリケーションか、Project Centennialを通してUWP化されたアプリかは分からないが、少なくともWindowsストアを介したほうがアプリの配布や管理は容易となるため、いい傾向だろう。

 またWindows 10以降のUWPアプリの特徴として、次の点が挙げられる。

  • AppXの配布サイズが最大150Gバイトに(8.1以前は4Gバイト
  • 外部ドライブ(SDカードなど)へのアプリのインストールが可能に

 前者は主にゲームや巨大なユーティリティ系アプリを想定したもので、これまでサイズ上の問題が理由でUWPの採用を避けていた開発者を呼び込むための施策となる。

 多くのユーザーが喜ぶのはおそらく後者の外部ドライブへのアプリのインストール機能だ。特に小型タブレットにおいては本体ストレージが32Gバイトや64Gバイト程度しか用意されていないことが多く、システム領域とデータ領域を差し引いたわずか数Gバイトから十数Gバイト程度で空き容量をやりくりしなければならず、不便を強いられていたケースが多かったと思う。

 これがWindows 10でようやく解消されることになる。アプリのパッケージファイル(AppX)は、外部ドライブにインストールされる際に暗号化が行われるので、安全性も担保される。

Copyright © ITmedia, Inc. All Rights Reserved.

この記事が気に入ったら
ITmedia PC USER に「いいね!」しよう