Insider's Eye

.NET Framework 3.0とは? Database Professionalsとは?

デジタルアドバンテージ 一色 政彦
2006/07/05

Page1 Page2

 米国ボストンで2006年6月11〜16日に開催されたTech-Ed 2006 Bostonに合わせて、.NET開発に関するいくつかの大きな発表があった。その1つが、これまで“WinFX”と呼ばれていた次期APIセットが「.NET Framework 3.0」と命名されたことである。そしてもう1つが、チーム開発環境Visual Studio Team System(以降、VSTS)に「Visual Studio 2005 Team Edition for Database Professionals」(以降、TSDATA)という新しいメンバーが追加されることだ。

 そこで本稿では、最初に.NET Framework 3.0への名称変更について簡単に説明した後、Tech-Ed 2006 Bostonであったセッション内容をベースにTSDATAの概要について解説する。

1.“WinFX”から“.NET Framework 3.0”への名称変更

Microsoft PDC 2005で発表された次世代テクノロジと新製品
Windows Communication Foundation概説
Windows Workflow Foundation概説

 まずはWinFXが.NET Framework 3.0へ名称変更されたことについてだ。

 .NET Framework 3.0へ名前が変更された理由について、米Microsoftデベロッパー部門のコーポレート・バイス・プレジデントSomasegar氏のブログによると、次のようなことが述べられている。

「WinFXの中核は.NET Frameworkであるにもかかわらず、このことは(開発者に)うまく伝わっていなかった。WinFXは、以下のようなさまざまな革新的新技術を.NET開発者にもたらす。

  • WPF:Windows Presentation Foundation(プレゼンテーション技術)
  • WCF:Windows Communication Foundation(コミュニケーション技術)
  • WF:Windows Workflow Foundation(ワークフロー技術)
  • WCS:Windows CardSpace(ID技術。コード名:“InfoCard”)

 これらの事実は『開発者にとっての次期フレームワーク』というにふさわしいことだ。以上のことから『.NET Framework 3.0』と命名するに至った。」

 しかしこの.NET Frameworkという名前には注意が必要だ。筆者は少なからず混乱した。

 どうやら、中核となる.NET Framework(CLRおよび基本クラス・ライブラリ)自体は現行の2.0のままらしいのだ。要するに、.NET Framework 3.0を図示すると、次のようになる。これを見ると、名称は「.NET Framework 3.0」だが、中身は「.NET Framework 2.0+α」となっていることが分かる。

【.NET Framework 2.0の概念図】

【.NET Framework 3.0の概念図】
.NET Framework 2.0(上)と3.0(下)の構成図の対比
つまり「.NET Framework 3.0=.NET Framework 2.0+WPF+WCF+WF+WCS」ということ。

動的プログラミング言語へと発展するC# 3.0とVB 9.0

 .NET Framework 3.0は次期Windows Vista(=2007年1月から出荷開始の見通し)に搭載される予定で、恐らくそれに合わせて開発者向けにSDKが提供されるはずだ。しかし、Windows Vistaでの開発に完全対応するはずの開発環境の「Visual Studio “Orcas”」(以降、VS Orcas)は2007年中に提供される予定となっている。

 つまり、.NET Framework 3.0 SDKとVS Orcasは同時に提供されるわけではない。これは筆者の予測でしかないが、“Orcas”が出てくるまでは、Visual Studio 2005(以降、VS 2005)とSDKを組み合わせてVista向けアプリケーション(あるいは.NET Framework 3.0を活用するアプリケーション)を開発するようなスタイルになるのだろう。

 なお注意点として、.NET Framework 3.0では、C# 3.0やVisual Basic 9で対応が予定されている新言語機能(例えば“LINQ”など)は利用できない。これらの新言語機能は、.NET Framework 3.0の次期バージョン(名称は未確定だが「.NET Framework 3.5」もしくは「4.0」となるだろう)に搭載されることになり、このバージョンの.NET FrameworkにVS Orcasが対応する。従って、次のリストに示すように、.NET Framework 3.0と完全に1対1対応するVisual Studioは存在しないことになる。

  • .NET Framework 1.0 = Visual Studio .NET 2002
  • .NET Framework 1.1 = Visual Studio .NET 2003
  • .NET Framework 2.0 = Visual Studio 2005
  • .NET Framework 3.0 = Visual Studio 2005(+追加モジュール?)
  • .NET Framework 3.5(or 4.0) = Visual Studio “Orcas”

2.Database Professionalsとは何か?

 次にTeam Systemの新メンバーのTSDATAについて説明しよう。

 Team System内でのTSDATAの位置付けは、次の図のとおりである。

Database Professionalsの位置付け
Database Professionalsは、Software Architects、Software Developers、Software Testersなどと並ぶ製品で、データベース開発者が利用する開発環境である。特に単体テストなどの機能が含まれているのが面白い。

 TSDATAを簡単に説明すると次のようになる。

「TSDATAは、現在の変化の激しいビジネスに対応する、データベース開発をサポートするための製品で、データベース開発者(Database Professional)を対象にしている。TSDATAを使えば、主に以下の事項を実現できる。

データベースの変更管理機能(による変更リスクの軽減)
データベースのテスト機能(によるソフトウェア品質の向上)
データベース開発におけるVSTS連携(によるチーム開発のサポート)
データベース開発のライフサイクル全体のカバー

 これらが実現されることで、品質の高いデータベース・アプリケーションの開発が容易になる。」

 TSDATAの一般的な利用手順を説明するが、その前にまずはこのの内容についてもう少し詳しく解説しておこう。

データベースの変更管理機能(による変更リスクの軽減)

 TSDATAの最大の特徴は、VS 2005のIDE上でデータベース・スキーマ(以降、スキーマ)を(.SQLスクリプト・ファイルを編集することで)を設計できることである。ここでいうスキーマとは、データベース構造(=テーブルやフィールドの内容など)を定義した(.SQLファイルの)ソース・コードだ。

 このように、開発するスキーマがVS 2005のソース・コードであるが故に、ソース管理ツールによるデータベース設計のバージョン管理が容易に実現できる。最初にベースラインとなる初期バージョンのスキーマを作成し、それをソース管理のリポジトリにチェックインすれば、あとはそのデータベース設計に対するすべての変更をソース管理ツールによって細かく管理できるのだ。これにより、スキーマを変更する際のリスクを大幅に軽減できるというわけである。

データベースのテスト機能(によるソフトウェア品質の向上)

 TSDATAでは、設計したスキーマに対する単体テストを作成可能だ。単体テストを自動化することで、常に問題がないかをチェックできるので、データベース・アプリケーションの品質を高められるだろう。

 単体テストは、TSDATAが持つ専用のテスト・エディタを使って、T-SQLあるいはマネージ・コードにより作成できる。作成した単体テストは、もちろん単独で実行することも、VSTSと連携させて実行することもできる。VSTSと連携させれば、データベース層のテストにとどまらず、ビジネス・ロジック層までをも含めた総括的なテストを実施することもできる。

データベース開発におけるVSTS連携(によるチーム開発のサポート)

 さらにTSDATAでは、(先ほども述べたが)VSTS(Team Foundation Serverも含む)と連携させて利用できる。

 VSTSと連携させることで、例えばチーム間で共通のデータ・リポジトリとバージョン管理を共有でき、アプリケーション開発プロジェクトのさまざまなチーム・メンバー(アーキテクト、開発者、テスター、プロジェクト・マネージャなど)とのコラボレーションがスムーズになる。また、Team Foundation Serverが提供するポータル・サイトを開発チームで共有することで、チーム間のコミュニケーションをより密にすることができるだろう。

データベース開発のライフサイクル全体のカバー

 TSDATAが優れている点は、一般的なデータベース開発のライフサイクル全体を包括的にカバーしてくれることだ。以下は、データベース開発のライフサイクルを図示したものだ。

一般的なデータベース開発のライフサイクル
TSDATAでは、一連のデータベース開発作業をサポートしてくれる。

 この図にあるように、一般的なデータベース設計・開発ではこれらの手順を繰り返しながら、徐々にデータベースを開発・拡張していくことが多いだろう。

データベース・スキーマの開発(編集/リファクタリング/比較)
データベース・スキーマのビルド(スキーマの確定とバージョン管理)
データベース・スキーマのテスト(テスト用データの生成/テスト/比較)
データベース・スキーマのデプロイ(データベースへの適用)

 次にこれら一連のデータベース開発ライフサイクルの流れを、TSDATAの実行画面(の例)を見ながら順に追ってみよう。

 

 INDEX
  Insider's Eye
  .NET Framework 3.0とは? Database Professionalsとは?
  1. “.NET Framework 3.0”への名称変更とDatabase Professionalsの概要
    2. TSDATAによるデータベース開発サイクルの流れ
 
 Insider's Eye


Insider.NET フォーラム 新着記事
  • 第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用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Insider.NET 記事ランキング

本日 月間