web-dev-qa-db-ja.com

XAML vs WPF vsストアアプリvs電話アプリvs UWA

XAMLがUIの設計にBlendと組み合わせて使用​​されていることを知っています。 XAMLがWPF、ストアアプリ、電話アプリ、UWAでどのように機能するかなど、多くの用語に戸惑っています。さらに、WPF、ストアアプリ、電話アプリ、UWAの違いは何ですか。つまり、古いデスクトッププロジェクトは使用されなくなり、WPF、Store App、またはUWAのいずれかで置き換えられなくなりますか?

21

.NETが〜2000年にリリースされたとき、WinFormsを使用してWindows用のデスクトップアプリケーションを作成できました。マネージコードでWindows APIをラップすることにより、「ネイティブ」コントロール(つまり、WinFormsで作成されたボタンは実際にはuser32.dllからのWindowsボタンコントロール)へのアクセスを提供します。これらは、Windows 10までを含む、適切な.NET FrameworkバージョンがインストールされているすべてのバージョンのWindowsで実行できます。

2006年に、WinFormsに代わるWPFがリリースされました。 WPFは、XMLに基づく言語であるXAMLを使用して、ユーザーインターフェイス要素を宣言します。単純なWPFアプリでは、.xamlファイルはGUIを記述し、分離コードファイルはロジックを記述します。 DirectXは、.xamlに記述されているものをウィンドウに描画するために使用されます。

Winformsと同様に、WPFを使用して作成されたプログラムは、Windows 10までを含む、適切な.NETフレームワークバージョンがインストールされているすべてのバージョンのWindowsで実行できます。XAMLの使用は完全にオプションです。 XAMLを使用して記述するユーザーインターフェイス要素は、.NET言語のC#またはVisualBasic.NETを使用して作成することもできます。ただし、XAMLを使用する方が通常は簡単です。 XAMLへまたはXAMLへ(MSDNブログ)へ を参照してください。

から XAML(Wikipedia)

XAMLは単にXMLに基づいているため、開発者とデザイナーは、コンパイルを必要とせずにコンテンツを自由に共有および編集できます。

〜2012からWindows 8とともに、metro/modern/windows-8/windows-store-appsという新しい種類のアプリを作成できます。これらのアプリは、GUIの記述にXAMLを使用するという点でWPFに似ています。これらのアプリはWindows 8、8.1、およびWindows 10でのみ実行できます。Windows8.1はいくつかの改善と機能を追加しましたが、ほとんど同じままでした。 Windows Phone用のアプリを作成するために同じテクノロジーが使用されました。

Windows 10のリリースにより、MicrosoftはUWP(Universal Windows Platform)を作成しました。これにより、同じコードベースを使用して、さまざまな種類のデバイス(デスクトップ/モバイル/ xbox/IoT /ホログラフィック)をターゲットにできます。 UWP用に作成されたこれらのアプリは、以前のWindows 8/8.1アプリに似ています。以前と同様に、XAMLはGUIの記述に使用されます。

Windowsストアアプリの場合のみ、後方互換性はありません。タイムラインはWindows 8-> Windows 8.1-> Windows 10/UWP。 UWPで作成されたアプリはWindows 10でのみ実行でき、Windows 8.1で作成されたアプリはWindows 8では実行できません。

50
Aniruddha Varma

このディスカッションスレッドをストップバイトで参照することを強くお勧めします。これには、はるかに詳細で、 WPF、UWPおよびWinRTの背後にある概念の説明 があります。

WinFormsについては、今は歴史だと思います。ほとんどWPFに置き換えられました。マイクロソフトはWindowsフォームの開発を中止し、おそらくそれを維持することも中止したと思います。

1
Yassine Yousfi