WindowsのUIフレームワークの歴史。Win32からWinUI 3まで

[PR]記事内のアフィリエイトリンクから収入を得る場合があります
  • URLをコピーしました!

S 20231025 113732

Windowsは長い歴史を持ち、Windows用アプリケーションを作成するためのUIフレームワークも時代と共に移り変わっています。特に最近は、MicrosoftがWindowsのUIを大幅に変更したこともあり、フレームワークも何度も変更され、開発者を混乱に陥れているようです。

そのようなWindows用のUIフレームワークの歴史をまとめたページ「Short history of all Windows UI frameworks and libraries(すべてのWindows UIフレームワークとライブラリの略歴)」が公開されています。

ゲーム開発関連のソフトウェア会社を経営しているNikolaus Gebhardt氏によって作成されたページで、以下のような情報がまとめられています。

  • Win32 - 1985: Windowsの組み込みAPI。C言語からアクセスでき現在も動作。
  • MFC - 1992: Win32のC++ラッパー。現在も広く使われている。
  • WinForms - 2002: Win32の.NETラッパーで、C#や他の.NET言語から使える。新機能の追加は予定されていない。
  • WPF - 2006: XAMLを導入し、DirectXを使ってベクターベースのコンポーネントを描画できる。現在はオープンソース。
  • Silverlight - 2007: Adobe Flashに対抗してWeb上でUIを実現するためにWPFの一部を使用。廃止された。
  • Xamarin (Forms) - 2014: クロスプラットフォームの.NETで、UIフレームワークのXamarin.Formsを含んでいた。MAUIに取って代わられた。
  • WinJS - 2012: HTML5とJavaScriptを使ってWindowsストアアプリを作成するためのライブラリ。もう開発されていない。
  • WinRT (XAML) - 2012: C++/WinRT、C++/CXを使ってWindowsアプリを作成するためのプラットフォーム。UIの作成にXAMLを使用。後にUWPに取って代わられた。
  • UWP (XAML) - 2015: C++をベースとしながらも.NETからも利用可能な「ユニバーサルアプリ」を作成するためのプラットフォーム。WinUIに取って代わられた。
  • WinUI - 2018: UWPと似ているがスタイルがWindows 11に近い。現在はWinUI 3に置き換えられている。
  • MAUI - 2020: Xamarin.Formsの後継となるマルチプラットフォームUIを作成するためのフレームワーク。XAMLをベースにしているが、.NET言語向けのみ。
  • WinUI 3 - 2021: WinUIに似ているが、UIフレームワークをOSから切り離し、ライブラリに入れた。

特に2010年以降になって、矢継ぎ早に新しいフレームワークが導入されている事がわかります。

なお、Redditには、ATL/WTLが含まれていないとの指摘もあり、完璧ではないことに注意する必要があるかもしれません。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次