(Marquis Howard)

 私はこれまで,「Microsoft .NET Compact Framework」のパワーを示すクールで役に立つアプリケーションをいくつか見てきたし,開発もしてきた。.NET Compact Frameworkはリッチなモバイル・アプリケーションを作るためのツール・セットを提供する。

 しかし,.NET Compact Frameworkを使うかどうか考える人が,よく思う疑問というものがある。つまり「この技術の将来計画はどうなっているのか?」ということだ。.NET Compact Frameworkの現在の能力と,そう遠くない未来の.NET Compact Frameworkの能力をちょっと見てみよう。

VS.NETでWebもモバイルも
開発環境は統一された

 あなたが.NET Compact FrameworkアプリケーションをVisual Studio .NETで開発するとしよう。Microsoftは,Visual Studio .NETで開発環境を統一するという大きな仕事をした。すなわち,Webやデスクトップや携帯機器など,どんなアプリケーションを作ろうが,関係なく統一されているということだ。

 異なる環境に切り替えるのはもう過去のことだ。Visual Studio .NETはあらゆるタイプの開発ソフトに共通のルック・アンド・フィールを提供する。これは開発者の作業を単純にしてくれる。

カスタム・コントロールが必要になるなど
モバイル向けは微妙に不便さが残っていた

 それぞれのタイプ向けのVisual Studio .NETのツールボックスは,ほぼ同じように見える。しかし最終的には,目標としているプラットフォームが,そのツールボックスにある実際のツールや「コントロール」を決めるのだ。.NET Compact Frameworkは.NET Frameworkをスケールダウンしたバージョンなので,少ないコントロールしかサポートしない。

 例えば,Visual Studio .NETは,完全な.NET Framework内では「DateTimePicker」コントロール(ユーザーにポップアップするカレンダから日付を選択させるコントロール)と「Calendar」コントロール(ユーザーが日付を選択するときにカレンダを表示するコントロール)の両方をサポートする。しかし,.NET Compact Frameworkでは,そうはいかない。DateTimePickerコントロールやCalendarコントロールと同じ機能を実現するには,カスタム・コントロールを作るしかない。.NET Compact FrameworkがDateTimePickerとCalendarという2つのコントロールをネイティブにサポートすれば,日付に影響を受けて動く携帯機器向けのアプリケーション開発がより楽なものになるだろう。

 カスタムのDateTimePickerコントロールの作り方に関しては,MicrosoftのWebサイトを参照のこと(該当サイト)。また,一般的なカスタム・コントロールの作り方に関する情報もWebサイトにある(該当サイト)。

 .NET Compact Framework内のいくつかのコントロールは,.NET Frameworkにある同等のコントロールと同じプロパティを持っていない。例えば,「Label」コントロールを見てみよう。フルのFrameworkアプリケーションでは,開発者はよくLabelコントロールの「BackColor」プロパティを使う。このBackColorプロパティは,あるラベルの背景色をカスタマイズするために使うものだ。しかし,このプロパティは.NET Compact Framework内では使えない。このプロパティを備えるカスタム・コントロールも作れるが,余計な作業をたくさんする必要がある。

Visual Studio 2005で
.NET Compact Frameworkがより便利に

 幸いに「Visual Studio 2005」(以前は「Whidbey」という開発コード名を付けられていた)で,これまで述べたような不便さは解消され,.NET Compact Framework用のツールボックスは非常に充実する。Microsoftは,いくつかの既存のコントロールをオーバーホールするだけでなく,新しいコントールもいくつか追加しているのだ。例えば,MicrosoftはLabelコントロールをオーバーホールして,それがBackColorプロパティをサポートするようにし,DateTimePickerとCalendarコントロールを追加した。

 DateTimePickerはドラッグ&ドロップ対応のコントロールになる。便利なのは,そのFormatプロパティだ。このプロパティを使って,その日付をどんなふうに表示させたいかを指定できる。先に定義されたフォーマットの1つから選んだり,独自のフォーマットを作ったりできる。

 Calendarコントロールはあなたがこのコントロールにあると期待する典型的なプロパティを備えることになる。DateTimePickerコントロールとは違い,このコントロールでは複数の日付を選択できる。

 Visual Studio 2005のツールボックスにある.NET Compact Framework用のそのほかの気の利いたコントロールは次の通りだ。
WebBrowserコントロール:このコントロールはあなたのクライアント・アプリケーション内でWebページを表示できるようにする。そのほか,あなたはこのコントロールをシンプルなHTMLドキュメント・ビューアとして使ったり,あなたのフォームにダイナミックHTML(DHTML)ベースのUI要素を追加したりするために使える。どちらかのアプローチがあなたのフォーム・ベースのアプリケーションにWebベースの要素を継ぎ目なく統合できるようにしてくれるだろう。
LinkLabelコントロール:このコントロールはファイルやフォルダ,Webページへのリンクを設定できるようにしてくれる。
Pocket PC Notificationコントロール:Pocket PC Notificationコントロールは1つのデバイス上で違うタイプの通知方法(例えばリマインダや情報メッセージ表示)を設定できるようにする。このコントロールの使い道の1つは,Webサービスのコールが帰ってきたあとに,バルーン・メッセージをポップアップさせるといったものだ。もし,返された情報がある条件に合致すれば,通知メッセージが送られる。
RichInkコントロール:私は,このコントロールがきっと自分のお気に入りの1つになると思う。このコントロールを使うと,あなたのアプリケーションはサインを受け取ってビットマップ・ファイルに保存できるようになる。

 こうしたコントロール群は,Visual Studio 2005に期待する新しくて面白い強化点のうちのほんのいくつかに過ぎない。Visual Studio 2005のリリースは1年近く先だが,こうした強化点は,.NET Compact Frameworkに明るい未来があることをはっきり示している。.NET Compact Frameworkは,堅牢で止むことなく成長するツール・セットを提供する。あなたはそれを使って携帯機器向けに,リッチで直観的なアプリケーションを作れるはずだ。