Visual Studio .NET が提供するスマート デバイス向けアプリケーション開発ツール
最終更新日: 2002/4/22
今日、携帯情報端末 (PDA : Personal Digital Assistant) で使用される大部分の機能は、わずか 5 年前に使用されていた多くのデスクトップ コンピュータよりも優れたものになっています。このため、多くの企業・団体が競争上の優位性だけでなく、運用効果を高める手段としてビジネスにスマートデバイスを導入しています。
優れたデバイスがビジネスの機会をもたらすのと同様に、最近ユビキタスネットーワークと呼ばれるインターネットの偏在性が新しいビジネスチャンスを生み出します。こういったデバイスを組織のインフラストラクチャに統合するために、組織はどのようにしてインターネットをうまく利用するのでしょうか? さらに、組織はどのようにして顧客やビジネス パートナーの異なるシステムやプラットフォームを統合するのでしょうか?
この新しいレベルの統合の鍵になるのが XML Web サービスです。 Microsoft .NET は、このような XML Web サービスや Web ベースのアプリケーションを作成、利用するためにMicrosoftが提供するプラットフォームです。Microsoft .NET Compact Framework は、Microsoft .NET による XML Web サービスをサーバーやデスクトップPCだけでなく、携帯電話や Pocket PC、PDA のような、リソースに制限のあるスマート デバイスにこのプラットフォームを提供します。 Visual Studio .NET および Smart Device Extensions (SDE) が、このような次世代アプリケーションの作成を容易にします。
Smart Device Extensions for Visual Studio .NET
SDE は現在ベータ 1 (英語版) を提供しており、ここで紹介する SDE の特徴は英語版のものを説明しています。製品版では日本語版も提供される予定です。
SDE は、モバイル デバイスやその他のデバイス用のアプリケーションの作成を可能にします。 SDE は、Visual Studio .NET と同時にはインストールされません。 SDE は、個別にダウンロードし、インストールする必要があります。 SDE をインストールすると、直接、開発環境 (IDE) に統合されるようになります。最終的には、SDE は Visual Studio .NET に不可欠な部分になります。
今のところ、大部分の開発者はデスクトップやサーバー開発に使用しているプログラミング ツールと同じツールを、モバイル デバイスやその他のデバイスに用いることはできません。開発者はひとつのツール、言語、プログラミングモデルにより、デスクトップアプリケーションの開発を行い、デバイスアプリケーション開発では、また別の開発環境により開発を行わなくてはいけません。この結果、生産性が低下し、再教育のコストが必要になります。開発者が既存のデスクトップ アプリケーションをデバイス用に展開しようとすると、新しい、異なるツール、新しいプログラミング インターフェイスのセット、新たなプログラミング慣習、および一般的に新たな専用の言語を学習する必要が生じます。
Visual Studio .NET がこの問題を解決します。
Visual Studio .NET を使用することにより、
デスクトップ アプリケーションやサーバー アプリケーションを構築している数百万の開発者は、
モバイル アプリケーションを開発するときに同じツールを使用できるようになります。
この結果、同じプログラマがデバイス用の高度なアプリケーションを作成するときに、
同じスキル、技法、ビジュアル デザイナ、および既存のコードを使用できるようになります。
つまり、企業はコストのかかる再教育が不要になります。
SDE for Visual Studio .NET を使用すると、 Pocket PC や次バージョンの Microsoft Windows® CE .NET ベースのデバイス用のモバイル アプリケーションを作成できるようになります。Windows CE .NET 上で SDE for Visual Studio .NET により開発されるすべてのアプリケーションは容易に XML Web サービスを利用でき、他のシステムとの統合が飛躍的に簡単になります。
SDE for Visual Studio .NET のインストールが完了すると、開発者は Microsoft Visual Basic .NET または Microsoft Visual C# .NET のいずれかを使用して、すぐにモバイル アプリケーションの作成を開始できます。.NET プラットフォームをサポートするその他の言語についても今後のリリースにおいてサポートが追加される予定です。
Visual Studio .NET: 統一された開発環境
また、Visual Studio .NET により、
モバイル アプリケーションの開発者は現在デスクトップ アプリケーションやサーバー
アプリケーションを構築しているのと同じ、統一された開発環境を使用できます。
Pocket PC アプリケーションや Windows CE .NET アプリケーションはプロジェクトの種類が異なるだけなので、
開発者は次のような既に馴染みのある Visual Studio .NET の機能を利用できます。
Visual Studio .NET 機能の詳細説明
Visual Studio .NET は、デスクトップ アプリケーションとデバイス アプリケーションに共通の統一されたデザイン環境を提供するだけでなく、モバイル アプリケーションやデバイス アプリケーションの開発者に多くの魅力的な機能を提供します。提供する機能には次のようなものがあります。
- デバイス エミュレーション。
開発者はアプリケーションの作成またはテストを行う前に特定のデバイスにアクセスする必要がありません。現在、英語版のPocket PCのエミュレータが用意されています。優れた、正確なデバイス エミュレータが Visual Studio .NET デザイン環境内に統合されています。このエミュレータは、開発者のデスクトップで対象となるオペレーティング システムを的確に実行することにより、物理デバイス上での動作を忠実に表現します。 Pocket PCデバイス用のエミュレーション オペレーティング システムが提供されています。その上、"Windows CE .NET" に基づく新しいカスタム デバイスが出現したときに、そのデバイスのエミュレータを簡単に Visual Studio .NET にプラグインして、 そのデバイス用のアプリケーション開発を高速化します。
- 自動配布。
開発者がアプリケーションをテストする必要があるとき、そのアプリケーションを上記で説明したエミュレータで実行することを選択できます (Pocket PC エミュレータ)。Pocket PC デバイスであれば、接続したデバイスにそのアプリケーションをダウンロードすることができます。 Visual Studio .NET はデバイスに配布しているときに、その特定のデバイスにどのファイルが必要かを自動的に判断し、ダウンロードを開始します。ダウンロードを完了すると、アプリケーションが実行され、デバッグを開始できます。
 |
 |
| 図 1. エミュレータで実行中のアプリケーション |
Figure 2. デバイスで実行中の同じアプリケーション |
- リモート デバッグ。
アプリケーションがデバイスに自動的に配布されると、そのアプリケーションを Visual Studio .NET 内から統合デバッガを使ってリモートにデバッグできます。アプリケーションのデバッグ プロセスは、デスクトップ エミュレータの場合も接続されたデバイスの場合もどちらもデスクトップ アプリケーションをデバッグする場合と同じです。開発者はコード エディタの左側の余白をクリックすることでブレークポイントを設定できます。また、コードのステップ実行、変数のウォッチやトレース、ローカル変数の表示、コール スタックの監視なども可能です。
.NET Compact Framework
Visual Studio .NET を使って作成したすべてのモバイル アプリケーションおよびデバイス アプリケーションを技術的に支える基盤となるのは、.NET Compact Frameworkです。
.NET Compact Framework は、デスクトップやサーバーの基盤である.NET Framework の機能豊富なサブセットです。 .NET Compact Framework は、デバイスを対象とするアプリケーションを構築する開発者向けにオプティマイズされています。
.NET Compact Framework は .NET Framework の多くの利点を提供しますが、特に小規模で、リソースが制限されるデバイス用にデザインされています。.NET Compact Framework は、開発者が各デバイス特有の機能をすべて利用できるようにすると同時に、モバイル デバイス用のアプリケーションの作成と配布を非常に簡素化しています。
.NET Compact Framework の上で実行されるアプリケーションは、マネージアプリケーションと呼ばれます。これは、.NET Compact Framework の実行ランタイムにより「管理(マネージ)」 されることによります。.NET Compact Framework が提供するランタイム サービスには、共通言語ランタイム、メモリ管理、およびコード アクセス セキュリティ、ローカル データ アクセス、リモート データ アクセス、 XML Web サービス サポートなどを処理する豊富な基本クラスのセットがあります。ネイティブなアプリケーション、つまりランタイムによって管理されない "アンマネージ" アプリケーションは Microsoft eMbedded Visual C++® を使用して開発できます。
- CPU との非依存性。.NET Compact Framework の実行ランタイムはデバイスの CPU に依存せずにコードの実行ができる仕組みを持っています。この特長により、作成されたアプリケーションは、再コンパイルする必要なしに、.NET Compact Framework のランタイムが実行できる環境にあるすべてのデバイス上で実行することが可能になります。
- 高パフォーマンス コンパイラと JIT テクノロジ。
.NET Compact Framework は、サーバー、デスクトップ、およびデバイス間の互換性を最大限に引き出すために、パフォーマンスの高い Microsoft C# コンパイラおよび Visual Basic .NET コンパイラを使用します。さらに、.NET Compact Framework の中心となるのはジャストインタイム (JIT) コンパイラです。 JIT コンパイラは、オンデマンドでのコンパイルを行い、ほとんどネイティブコードに近い速度での実行を実現します。
詳細については、.NET Compact Framework: 概要 をご覧ください。
注意: このページで使用されている画面ショットはベータ版に基づいています。製品版では変更になる場合があります。
|