Extensible Application Markup Language

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索
Extensible Application Markup Language (XAML)
拡張子 .xaml
MIME Type application/xaml+xml
開発者 マイクロソフト
種別 マークアップ言語
派生元 XML
テンプレートを表示

Extensible Application Markup LanguageXAML、ザムルと発音する)は、オブジェクトプロパティ、あるいはそれらの関係や相互作用を定義するために用いられるXMLベースの宣言的言語である。XAMLという略語はもともと「Extensible Avalon Markup Language」に由来していた。AvalonとはWindows Presentation Foundation (WPF) のコードネームである。

XAMLは.NET Framework 3.0以降のテクノロジにおいて広範囲にわたって使われている。とりわけ、Windows Presentation Foundation (WPF) および Silverlightにおいてユーザーインターフェイス要素やデータバインディング、イベント処理、などを定義するために、また、Windows Workflow Foundation (WF) においてワークフローそのものを定義するために用いられる。なお、Windows 8およびWindows RTで利用できるWinRT APIを使用したWindowsストアアプリでは、.NETアプリケーションに限らずネイティブアプリケーションでもXAMLを使ってUIを構築することが可能となっている。

XAMLにおける要素 (element) はCLRにおけるオブジェクトインスタンスに、属性 (attribute) はCLRにおけるプロパティやイベントに対応する。典型的には、XAMLファイルはMicrosoft Expression BlendMicrosoft Visual StudioXAMLPadのような開発ツールによって生成される。XAMLファイルは.bamlファイル(バイナリファイル)にコンパイルされ、リソースとして.NET Frameworkアセンブリに含められる。実行時には、CLRがアセンブリのリソースから.bamlファイルを抽出・解析し、WPFのユーザーインターフェイス要素やワークフローを作成する。

WPFにおいては、XAMLはAdobe Flashのように表現豊かなユーザーインターフェイスを記述することができる。他のXMLベースのユーザーインターフェイス記述言語にはXULUIMLがある。XAMLは単純な2Dグラフィックスだけでなく3Dオブジェクトも記述することが可能で、さらに回転・拡大縮小といった変形に加えて、アニメーションやその他の多彩な効果を表現することができる。

XAMLで記述できるものは何でもC#VB .NETなどといった.NET言語でも記述することができる。しかし、重要なことはXAMLがXMLベースであるが故に開発ツールの設計が容易であるという点だ。その結果、特にWPFにおいて、XAMLファイルを生成するためのさまざまなツールが開発されている。また、XMLなので分析者・デザイナ・開発者がそれぞれの立場から製品に関与することが容易になっている。

関連項目[編集]

外部リンク[編集]