特集モバイル開発を支援する.NET Compact Framework、.NETの世界を小型デバイスに(3)
Greg DeMichillie |
Visual Studio .NETが活用可能
「スマート・デバイス」用アプリケーションの開発作業をWindowsアプリケーションを手がける企業開発者にとってなじみやすいものにするためには、できるだけ多くのAPIを維持するだけでは足りない。開発者が慣れ親しんだプログラミング言語とツールを使えるようにすることが必要だ。つまり、大半のWindows開発者にとって重要なのは、Visual Studioが使えるかどうかだ(Visual Studio .NETとその将来のリリースについては、Directions on Microsoft日本語版2002年10月15日号の「Visual Studioのロードマップを発表、OSとサーバのアップグレードと連動して機能拡充」を参照)。
MicrosoftのWindows CE用ツールの従来のバージョン(eVBとeVC++)は、Visual Studioと同じチームが開発したものではない。Microsoftの別のチームが各製品のデスクトップ・バージョンのソース・コードに変更を加え、Windows CEベースの組み込みデバイス・アプリケーションの開発者ニーズに沿って機能を追加および削除したものだ。この調整に時間がかかったため、eVBやeVC++のようなWindows CE用ツールは、デスクトップ用ツールの機能向上に遅れを取ることが多かった。
Visual Studio .NETは従来のVisual Studioとは異なり、包括的な拡張性を備えたアーキテクチャを持っている。このため、CFチームはVisual Studio .NETにプラグインする形でその機能を拡張、変更でき、ソース・コードの「スナップショット」を用いて別個の製品を作る必要がなかった。
例えば、CFアプリケーションのユーザー・インターフェースは、デスクトップ・アプリケーションの開発に使われるのと同じGUIデザイナを用いて開発できる。こうしたGUIデザイナは、.NET FrameworkとCFの違いを検知するように拡張されており、適切なコードを生成する(ビジュアルな例については、下図「Visual Studio .NETによるデバイス・アプリケーション開発」を参照)。
開発者はアプリケーションを記述した後、デバッグツールでエラーを探して修正するが、Visual Studio .NETのおなじみのデバッグ機能(変数の上にマウスを移動するとツールチップで値が表示されるなど)はすべてCFアプリケーションのデバッグに利用できる。さらに、CFアプリケーションはデバイス上で直接(クレードル接続とき)、あるいはVisual Studio .NETで提供されるエミュレータを用いてデバッグできる。開発者はエミュレータにより、物理的なデバイスが手元になくてもアプリケーションをテストしてデバッグできる(エミュレータによるアプリケーションのデバッグについては、下図「デバイス・アプリケーションのデバッグ」を参照)。
現状:デバイスには非搭載
CFは、Windows CE .NET、Pocket PC 2000、Pocket PC 2002の各リファレンス・プラットフォームに対応しており、小型デバイスで必要なストレージ容量は約1.5MBとなっている。プラットフォームの違いから、CFの最初のリリースはMicrosoftのSmartphoneリファレンス・プラットフォームと互換性がない(ただし、よりサイズが大きいPPC Phone Editionには対応している)。Microsoftは、CFのSmartphone対応バージョンの開発が優先事項であることを明らかにしている(MicrosoftのSmartphoneに関する計画の詳細は、Directions on Microsoft日本語版2002年11月15日号の「無線WAN戦略が進展、長期戦で狙うデータサービス・インフラ市場」を参照)。
CFはWindows CEの「XIP」(Execute in Place)アーキテクチャをサポートしている。このアーキテクチャにより、複数のアプリケーションがCFの複数コピーをロードせずに同時にCFを使用できる(CFの複数コピーのロードは必要メモリ量の増大につながる)。CFがROMに搭載されていればこの機能を最も有効に活用できるが、いまのところCFをROMに搭載して出荷しているデバイスメーカーはない。
Microsoftは、CFがいつ小型デバイスに搭載されるかの具体的な見通しを発表していない。DellやHewlett-PackardなどのメーカーがCFをデバイスに搭載するまで、顧客はCFを独自にデバイスに配備する必要がある(Visual Studio .NETでは、このプロセスを比較的容易にするツールが提供されている)。
参考資料 ■.NET Compact Frameworkに関する詳細は、msdn.microsoft.com/vstudio/device/compactfx.aspを参照。 ■Microsoftの開発者向けWebキャストプログラム「The .NET Show」の最近の回では、.NET Compact Frameworkのデモとプロダクト・チームの解説が放映された。msdn.microsoft.com/theshow/Episode029/default.aspを参照。 ■.NET FrameworkのWebサイトは、msdn.microsoft.com/netframeworkを参照。 |
Directions on Microsoft日本語版 本記事は、(株)メディアセレクトが発行するマイクロソフト技術戦略情報誌「Directions on Microsoft日本語版」から、同社の許可を得て内容を転載したものです。Directions on Microsoftは、同社のWebサイトより定期購読の申込みができます。 |
INDEX | ||
[特集] | ||
モバイル開発を支援する.NET Compact Framework、.NETの世界を小型デバイスに(1) | ||
モバイル開発を支援する.NET Compact Framework、.NETの世界を小型デバイスに(2) | ||
モバイル開発を支援する.NET Compact Framework、.NETの世界を小型デバイスに(3) | ||
- 第2回 簡潔なコーディングのために (2017/7/26)
ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている - 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう - 第1回 明瞭なコーディングのために (2017/7/19)
C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える - Presentation Translator (2017/7/18)
Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
|
|