Insider's Eye Longhornの機能と構造 3.XAMLによる宣言型のアプリケーション開発デジタルアドバンテージ2003/11/14 |
|
|
Longhornでは、新しくXAML(Extensible Application Markup Language、ザメル)という、XMLベースの宣言型マークアップ言語が導入される。これは習得が容易なアプリケーション開発用の言語であり、WindowsアプリケーションでもWebアプリケーションでも、どちらでも簡単に作成することができる。例えば一番簡単な例である「Hello, World!」と表示するためには、次のようなhelloworld.xamlファイルを作成すればい。
<Window xmlns="http://schemas.microsoft.com/2003/xaml" Visible="true"> |
このファイルを実行すると、次のような表示が得られる。
helloworld.xamlの実行例 | |||
上記のXAMLファイルを実行すると、このようにInternet Explorer(とXAMLのレンダリング・エンジン)によって自動的に表示される。 | |||
|
この例では文字出力しかしていないが、テキスト・ボックスやボタンを作ってユーザー入力を受け付けたり、各種の図形を描画したり、ビデオを再生、描画させたり、さらにはC#やVB.NETで書かれたルーチンなどを呼び出したりすることができる。結局のところXAMLとは、Avalonやマネージ・コード(CLR)を呼び出すための宣言型の言語というのが本当のところだろう。現実的なアプリケーション開発の場面では、まずXAMLでユーザー・インターフェイスのプロトタイプを作成し、必要に応じてXAMLからマネージ・コードを呼び出すようにすることになるだろう。XAMLのコードと、そこから呼び出されるコードは分離して開発を進めることができるので(コード・ビハインド)、例えばデザイナーとプログラマーが分担してアプリケーションを開発するといった場面で効果的に利用できる。現在のWhidbey(次期VS.NET)にはXAMLをGUIベースでデザインするためのデザイン・ツールは用意されていないが、HTMLエディタなどと同様に、将来は専用のデザイン・ツールが提供されることになるだろう。
XAMLによるページ記述
XAMLの少し変わった用途として、ページ記述言語として利用するという使い方がある。XAMLではAvalonの持つさまざまな描画機能を利用することができるが、PostScriptやPDFのように、描画位置を指定して文字を描画するコードを書けば、オンラインで見る書籍アプリケーションとして利用することもできる。Avalonはベクタ・ベースの描画機能を持つので、拡大/縮小を行ってもジャギーが出ない、きれいな表示を得ることができる。HTMLとWebブラウザでも同様のことが可能だが、利用できるレイアウト要素に制約があったりするので、この方がより印刷出版物に近いイメージを作成することができる。
LonghornのDVD-ROMには、XAMLを使った書籍の例が何点か収録されている。以下はその例である。これは、PDC参加者にDVD-ROMとともに配布された、Longhornのプログラミング入門書を表示したところだ(PDCレポートの第1回参照)。
実際には、このページは次のようなXAMLコードによって描画されている。
XAMLで記述されたページのコード | |||
上の画面(第3章の冒頭)部分のXAMLコードを示す。 | |||
|
Windows Client Printer Driver
XAMLの変わった使い方の例として、もう1つ「Windows Client Printer Driver」を紹介しておく。これは、XAMLのコードを出力する仮想プリンタ・ドライバであり、Longhornのアプリケーションとして用意されている。通常のWindowsアプリケーションでこのドライバへ「印刷出力」すると、GDIコマンドがXAMLのコードに変換され、ファイルに出力される(PDFファイルを出力するpdfwriterのようなもの)。これにより、アプリケーションの出力をベクタ・イメージのままキャプチャして、保存したり、譲渡したりすることができるようになる。
Windowsの新たな1ページがめくられようとしている
以上、3回にわたりPDC2003の内容をレポートし、次世代Windowsとして開発が進むLonghornについて紹介してきた。これまで紹介してきたように、Longhornでは、ユーザー・インターフェイスが大幅に改良され、WinFXやWinFSといったさまざまな新しいシステム・インターフェイスやベース・インフラ・テクノロジが導入される。Windowsは、次なる飛躍に向け、大きなステップアップを図ろうとしているのだ。
コンピューティングはまだまだ進歩を続ける。漠然としたものではあるが、今回のPDC2003では、次世代コンピューティングに向けた確かな胎動が感じられた。ソフトウェア開発者として、システム管理者として、そしてエンド・ユーザーとして、この次世代への変化を飛躍に結びつけられるように、Longhornの今後の動向を注視していこう。
関連記事 | ||
革新的なOSを目指して開発が進むLonghorn(Windows Server Insider) | ||
次期クライアントOS「Longhorn」本格始動へ(Windows Server Insider) | ||
.NET開発者のためのPDC 2003レポート(Insider.NET) | ||
関連リンク | ||
マイクロソフト、PDC 2003において開発者にソフトウェアの革新の新たな波の具体像を示す(マイクロソフト) | ||
Remarks by Bill Gates, PDC 2003(米Microsoft) | ||
INDEX | ||
Insider's Eye | ||
Longhornの機能と構造 ― PDC 2003レポート No.3 ― | ||
1.Longhornファースト・ルック | ||
2.Longhornを支えるWinFX API | ||
3.XAMLによる宣言型のアプリケーション開発 | ||
「Insider's Eye」 |
- Azure Web Appsの中を「コンソール」や「シェル」でのぞいてみる (2017/7/27)
AzureのWeb Appsはどのような仕組みで動いているのか、オンプレミスのWindows OSと何が違うのか、などをちょっと探訪してみよう - Azure Storage ExplorerでStorageを手軽に操作する (2017/7/24)
エクスプローラのような感覚でAzure Storageにアクセスできる無償ツール「Azure Storage Explorer」。いざというときに使えるよう、事前にセットアップしておこう - Win 10でキーボード配列が誤認識された場合の対処 (2017/7/21)
キーボード配列が異なる言語に誤認識された場合の対処方法を紹介。英語キーボードが日本語配列として認識された場合などは、正しいキー配列に設定し直そう - Azure Web AppsでWordPressをインストールしてみる (2017/7/20)
これまでのIaaSに続き、Azureの大きな特徴といえるPaaSサービス、Azure App Serviceを試してみた! まずはWordPressをインストールしてみる
|
|