このページの本文へ

前へ 1 2 3 4 次へ

Windows Info 第146回

変わるWindowsのアプリ戦略 UWPからデスクトップアプリに原点回帰か

2018年11月11日 10時00分更新

文● 塩田紳二 編集● ASCII編集部

  • この記事をはてなブックマークに追加
  • 本文印刷

UWP用のGUIを利用し、動作環境などに影響されにくい
デスクトップアプリを開発できるように

 その点、最近追加されたXAML Islandや.NET Framework 4.8は、デスクトップアプリケーションの強化になるものだ。

 UWPは、これまでのWinFormやWPFでの経験を元にGUIフレームワークを作り直している。たとえば、画面サイズや解像度、フォームファクター(スマートフォン、タブレット、ノートPC、デスクトップでは、ディスプレイとユーザーの位置関係が違う)に影響されにくいGUIをデザインできる。

 XAML Islandは、UWP用に用意したGUI機能、具体的にはXAMLで記述したGUIデザインをデスクトップアプリケーションから利用できるようにしたものだ。WPFでもXAMLによるGUI記述は可能だったし、利用が推奨されていたが、UWPのものとはオブジェクト構造(記述方法)が違っていた。

 .NET Framework 4.8は、現在Windows 10に搭載されている4.7の後継となるもので、「Windows 10(AKA "WinRT")API全般へのアクセス」、「WPFおよびWindowsフォームアプリケーションでUWP XAMLコントロールをホストする機能」(XAML Islandの利用)、「UWPブラウザ(Edge)とメディアコントロールをホストする能力」といった特徴を持つ。また、Windows 10の高DPI対応機能についてもWinFormやWPFが対応する予定だ。

 .NETは、Windowsに組み込まれている「.NET Framework」とは別に、オープンソースで更新速度の速い「.NET Core」がある。.NET Coreは、プラットフォームに依存しない.NETの実装で、特定のプラットフォームの事情や細かい互換性を考慮しないため、新機能がすぐに搭載され、更新の速度も速い。

 現在では、.NET Coreとその標準ライブラリとなる.NET Standardによりデスクトップアプリケーションの開発も可能になっている。こちらは.NET Frameworkの仕切り直し的な部分があるが、デスクトップアプリケーション側から見れば、アプリケーションモデルの選択が増えた格好になる。

 .NET Core 3.0では、WPFやWinFormがサポートされた。また、複数バージョンの.NET Coreを共存させることも可能になり、アプリケーションは、特定バージョンの.NET Coreを使い続けることができるようになった。アプリケーションに.NET Coreを組み込んで出荷することも可能であり、ホストシステム側のバージョンに依存しない実行環境を維持できる。

 ARMプロセッサを搭載するWindows On ARMでは、64bit ARMコードによるWin64APIアプリケーションの開発を可能にすると発表している。つまり、デスクトップ環境で動作するARM64アプリケーションが開発できるようになるわけだ。このあたりからも、マイクロソフトがデスクトップアプリケーションを重視しだしたことがうかがえる。

 UWPを次世代のアプリケーション環境としてスタートしたWindows 10だが、出荷から3年が経過し状況も変わってきた。デスクトップアプリケーションの強化に方向転換したマイクロソフトだが、開発者の目は、AndroidやiOSに向いたままだ。次にマイクロソフトは何をするのかに注目したい。

前へ 1 2 3 4 次へ

カテゴリートップへ

この連載の記事

注目ニュース

ASCII倶楽部

プレミアムPC試用レポート

ピックアップ

ASCII.jp RSS2.0 配信中

ASCII.jpメール デジタルMac/iPodマガジン