MS_UWP - NetDevInfraWGinOSSConsortium/NetDevInfraWiki GitHub Wiki

UWP

概要

最新の情報では

「実質的に互換性維持のために提供される状態へ入り、
代わりに "Windows App SDK" へ開発がシフトして行く。」

と言う事らしい。

移行メモ(正式名称): UWP = Universal Windows Platform
Windows 10(2015)で導入された、Microsoft Store 配布を前提とした
アプリ プラットフォーム。

詳細

WindowsVisual Studio
ロックインされているためか、あまり流行っていないように思う。
スマホはプラットフォームに競争力があるので
ロックインされていても「已む無し」という感じだが)

クロス・プラットフォーム性が無い。

.NET Core上で動くが、Linuxで動くような
クロス・プラットフォーム性は無い。

  • そもそもWindowシステム(≒GUI)のクロス・プラットフォーム化が難しい。
  • 余談:.NET Core 3.0 でWindows Forms
    WPFがサポートされるらしいがこれもLinuxはサポートしない。

移行メモ(正誤): 「.NET Core 上で動く」という記述は、
厳密には正しくない
UWP は長らく .NET Native(AOT コンパイル)と
UWP 専用の .NET プロファイルの上で動いており、
netcoreapp.NET Core とは実行基盤が別だった。
UWP が本流の .NET ランタイムに乗るのは、
WinUI 3 / Windows App SDK 以降の話である。

なお「Windows Forms / WPF の .NET Core 対応が Linux をサポートしない」という
指摘はそのとおりで、現在も変わっていない。

npm ,etc.のNode.js系のツールと競合

Project Reunionを経て、...と言う事らしい。

補足(その後の経緯): 本ページの見立ては当たった。整理すると次の通り。

時期 出来事
2015 UWP 登場。「1 つのコードで全 Windows デバイス」を標榜
2020 Project Reunion 発表。UWP と Win32 の分断を解消する方針へ
2021-11 Windows App SDK 1.0 リリース(Project Reunion の正式名)
2021-10 「UWP は互換性維持のみ」と実質的に表明
現在 新規の Windows ネイティブ UI は WinUI 3 + Windows App SDK が推奨

UWP が伸びなかった主因は、本ページの指摘どおり ①Microsoft Store が定着しなかった、②サンドボックス制約が業務用途に厳しかった、
③Win32 資産と断絶していた
の 3 点である。
Windows App SDK はこの ③ を解消することを主眼に置いている。

なお、UWP アプリがすぐ動かなくなるわけではない。
Windows 11 でも引き続き動作し、セキュリティ修正も提供される。

参考

microsoft.com

Build Insider

@IT

内部リンク


Tags: 移行, .NET開発, UIサブシステム, .NET Core, WPF/Silverlight, XAML

⚠️ **GitHub.com Fallback** ⚠️