私自身は「29年前のWin32 APIでWIndows プログラミング(言語はC++)をスタートし、1年前にC#の学習を開始(知らなかったけどWinFormプラットフォームだった)し、最近やっとWPFプラットフォームを理解し始め、少し弄れるようになった」浅学者(せんがくもの)ですが、その関係でこの記事(2022年4月)を読む機会がありました。

 

まぁ、言葉ではWPFもUWPも知っていましたし、WinUIWinRTのファミリー(「UWP XAMLやWinRT XAML」)位に理解していましたが、WinUI 3)が何かは余り分からず、ちょっと調べてみました。(リンクはその結果です。)

:「(完全に Windows 10 SDK から切り離された) Windows App SDK(注:Windows AKDとは全く異なります)」に含まれるUIプラットフォームらしく、WinUI 2もありますが、「WinUI 3はWinUI 2のコードベースからスタートしましたが、両社(解説:「者」の誤字?)は別個の技術です。WinUI 2とWinUI 3はどちらもXAMLベースのUIフレームワークで、.NETとC++で動作します。なお、WinUI 2とWinUI 3は相互に互換性がありません。」「WinUI 2がWinUI 3と混在することはできません。」ということなので、ちょっと混乱が予想されそうです。

 

この巷で騒がれているWinUI 3。それにかかわるWindows 開発者向けFAQを覗いてみました。

 

一寸驚きです。

 

少しまとめてみると、

 

となりますか。同じく巷ではWindows10のサポートが打ち切られると(32bitベースでは)Windows11に移行できなくなるPCが山程あると騒いでますが、Windowsが32bitを捨てて、64bitベースとなる布石のようにも思えますね。まぁ、パラダイムシフトなので仕方がないような気もします。

 

気に掛かるのは32bitベースや.NETFrameworkなどの「旧い器」です。一応Microsoftは、

 

Q: UWP/WinUI 2 は非推奨なのですか?
A: いいえ。 UWP と WinUI 2 は引き続きサポートされており、バグ、信頼性、およびセキュリティの修正が行われます。 ただし、最新の .NET ランタイムのサポートを含むほとんどの新機能は、Windows App SDK/WinUI 3 だけに追加されます。
Q: WPF は非推奨ですか?
A:いいえ。 WPF はまだサポートされていて、いくつかの機能アップデートを受けることもできます。
Q: WinForms は非推奨ですか?
いいえ。 WinForms はまだサポートされていて、いくつかの機能アップデートを受けることもできます。
Q: Windows ランタイム (WinRT) は非推奨ですか?
A: いいえ。 WinRT とは、複数の言語間での相互運用を可能にするアプリケーション バイナリ インターフェイス (ABI) を指します。 WinRT は COM の進化系です。 Windows App SDK は、その機能のほとんどを WinRT API を通じて提供します。

 

ここで書いていますが、

 

不動産屋さんの物件説明

 

のように聞こえるのは私だけでしょうか?

 

ps. パラダイムや環境の変化が大きそうなので、元コンサルタントとしてMicrosoft Copilot君に次の質問をしてみました。

Q: WinUI 3になると、何が良くなるのですか?利点を教えてください。
A: Windows UIライブラリ (WinUI) 3 は、Windows 10向けのユーザーインターフェイスライブラリであり、UWPアプリケーション (およびXAML Islandsを使用するデスクトップアプリケーション) の構築に使用できます。WinUI 3は、Windows App SDK (旧称: Project Reunion) の一部であり、2021年11月17日にリリースされました。WinUI 3 には、以下のような利点があります。
Fluent Design Systemのアクセス: WinUI 3に移行する利点の1つは、Fluent Design Systemにアクセスできる点です。Fluent Design Systemは、Windows 10で導入されたデザイン言語であり、アプリケーションに美しさと洗練さをもたらします。
Windows App SDK の一部: WinUI 3は、Windows App SDKの一部であり、WinUI 3アプリでは他のWindows App SDK機能や APIも使用できます。
ダークモード、ライトモードへの対応: WinUI 3では、ダークモード、ライトモードへのUI変更が自動で行われます。基本的に WinUI 3では色の指定をしなくてもよいです。


腑に落ちたかなぁ?(素人プログラマーには無用の長物だな。)

 

ps of ps. まぁ、私の場合はもう歳で、プログラミング寿命が(生物学的寿命も)長くないですが、ITビジネスでこき使われる方々は大変ですね。