このトピックはまだ評価されていません - このトピックを評価する

Visual Studio 2005 Team System : クラス デザイナ

Matthew A. Stoecker
Microsoft Corporation

May 2004
日本語版最終更新日 2004 年 7 月 26 日

適用対象:
Microsoft Visual Studio 2005 Team System

概要 : Visual Studio 2005 Team System のクラス デザイナを使用すると、クラスの構造とその関係を視覚化できます。 このビジュアル デザイン環境を使用いただくことで、クラス作成はもちろん、リファクタリングまで簡単に行うことが可能になります。このホワイト ペーパーでは、これらの機能の一部を紹介します。

メモ このドキュメントは製品のリリースに先立って制作されているため、実際に出荷される製品にこのドキュメントの内容が正確に反映されるとは限りません。このドキュメントの情報は、このドキュメントの公開時点の製品について書かれたものであり、計画以外の目的で利用できるものではありません。また、このドキュメントの情報は、予告なしに変更される可能性があります。

目次

はじめに
Visual Studio クラス デザイナを使用する理由
Visual Studio クラス デザイナ
Visual Studio とのツールの統合
まとめ

はじめに

Visual Studio 2005 Team System のクラス デザイナは、共通言語ランタイム用のビジュアル デザイン環境です。Visual Studio クラス デザイナを使用することで、クラスの構造とその他の型を視覚化することができ、この視覚的な表示を通じてソース コードを編集することができます。クラス図に加えられた変更は直ちにコードに反映されますし、コードに加えられた変更は直ちにデザイナの外観に反映されます。デザイナとコードの同期関係によって、複雑なクラスの構造と関係を視覚的に扱うことができ、容易にクラスの作成から変更までを行えるようになります。

クラス デザイナは、識別子の名前を変更したりメソッドのオーバーライドを支援したりする機能に加えて、特に、コードのリファクタリングを支援する機能を備えています。クラスや構造体を自動生成したり、自動生成スタブによってインターフェイスの実装関係を作成したりできます。

また、クラス デザイナをコード ベースの情報を他のチーム メンバーに伝達するコミュニケーション ツールとして使用することもできます。さらに、クラス図をハード コピーに印刷したり、HTML ページや PowerPoint プレゼンテーションに表示するための画像として保存できます。

図 1 : Visual Studio クラス デザイナ


Visual Studio クラス デザイナを使用する理由

ソフトウェアのデザインは、困難で複雑な作業です。初期の設計フェーズに始まり、コードのレビュー、最終製品のドキュメント化に至る開発サイクルのすべての段階において複雑さが伴います。Visual Studio クラス デザイナは次のシナリオで示すような、開発サイクル全体を支援します。

  • 既存のコードの理解 : 既存のコードを、コードのまま理解しようとしても複雑でわかりにくい場合があります。Visual Studio クラス デザイナを使用することで、既存のクラス階層構造をグラフィカルに参照し、クラスの相互関係を視覚的に把握することができます。
  • クラス デザイン : Visual Studio クラス デザイナを使用することで、グラフィカルな方法でソフトウェアの設計と実装を行うことができます。
  • コードのレビューおよびリファクタリング : Visual Studio クラス デザイナは、コードのレビューとリファクタリングを行う強力にサポートします。既存のコード図にレビュー用の注釈を付けることができるほか、デザイナを使用してコードのリファクタリングが可能なので、時間を節約することができます。
  • クラス図のドキュメント化 : クラス デザイナを使用することで、既存クラスの階層構造を継承ツリーとしてグラフィカルに表示し、ドキュメント化することができます。クラス図は、電子メールやビジュアル プレゼンテーションを通じてチーム メンバーにアイデアを伝達する場合にも役に立ちます。

Visual Studio クラス デザイナ

Visual Studio クラス デザイナは、.NET Framework のためのビジュアル コード デザイン ツールです。クラス デザイナは共通言語ランタイムと密接に結び付けられています。クラス、構造体、インターフェイスといった CLR は、それぞれ別個の概観で表現されます。さらに、図中の用語はそれぞれの実装言語に依存する形で表示されます。たとえば、Visual Basic において Public、Private、および Friend アクセス レベルで作業したとすると、C# では、それぞれ、public、private、および internal として表示されます。クラス デザイナは CLR と密接に統合されているので、.NET Framework を使用してクラスをオーサリングするための理想的なツールだといえます。

Visual Studio クラス デザイナは開発サイクル全体を通じてその関連を維持し、上記のすべての主要なシナリオにおいて機能を提供します。以下に例を示します。

  • 既存のコードの理解 : Visual Studio クラス デザイナを使用することで、クラスの相互関係を迅速かつ容易に調べることができます。既存のコードの継承階層を調べることができるほか、参照先タイプおよび .NET アセンブリを調べることができるので、既存のタイプを視覚的に参照し、深く理解することができます。
  • クラス デザイン : Visual Studio クラス デザイナを使用することで、クラスとクラス階層構造を迅速にデザインすることができます。使い慣れたドラッグ アンド ドロップ機能を使用することで、コード エディタとの同期を維持したままクラス図を作成することができます。クラス図に加えられた変更点は直ちにコードに反映され、その逆も同様に反映されます。クラス図には、その瞬間の最新のコードのビューが表示されます。
  • コードのレビューおよびリファクタリング : Visual Studio クラス デザイナは、コードのレビューとリファクタリングを行う強力なツールです。既存のコード図に後の操作に関するコメントを追加することができます。また、リファクタリング機能が組み込まれているので、シンボル名の変更やプロパティのフィールドのカプセル化といった良く利用するタスクを迅速に実行することができます。
  • クラス図のドキュメント化 : 既存のクラス図をさまざまな方法で表示することができます。たとえば、HTML ページや Microsoft PowerPoint プレゼンテーションに表示するイメージとして印刷したり保存したりすることができます。

Visual Studio クラス デザイナを使用したクラスの作成

クラス デザイナを使用することで、簡単にプロジェクトで使用するクラスの作成や構成が行えます。クラス図には、現時点におけるコードのビューが表示されます。クラス図に加えられた変更はコードに自動的に同期化され、その逆も同様に同期化されます。「クラス」をツールボックスから、クラス デザイナの画面にドラッグするだけで、画面上の表記だけでなく、実際のコードとしてもクラスを作成することができます。プロジェクトにクラスを作成すると、コード エディタを開いて、この新しいクラスにコードを直接追加できるようになります。加えられた変更はすべてクラス図に反映されます。

クラスを作成すると、[Class Details] ウィンドウを使用してメンバを追加できるようになります。たとえば、メソッドを追加するには、[Class Details] ウィンドウで [メソッドの追加] をクリックし、メソッド名を入力します。これにより、戻り値の型とアクセス レベルを示し、このメソッドに関するコメントを追加できるようになります。メソッドを作成すると、メソッド名にパラメータを追加できるようになります。これは、メソッドを追加する方法とほぼ同じ、最初にパラメータ名を指定し、次に、型、修飾子、コメントを指定するという方法で行います。プロパティ、フィールド、イベントはメソッドの追加と同じ方法で追加できます。ツリー コントロールを使用したメソッドの編集作業は、コード エディタへの入力作業ときわめて似ています。セルの移動に同じキーストロークを使用できるほか、IntelliSense ヘルプを使用することができます。

インターフェイスの実装関係

クラス デザイナを使用することで、簡単にインターフェイスの実装関係を追加することができます。実際、「インターフェイス」がクラス デザイナの画面上に表示されている場合、クラスを継承する場合に使用する方法と同じで、クラスからインターフェイスに継承ラインを引くという方法を使用してこのインターフェイスの実装関係を追加することができます。インターフェイスが Visual Studio クラス デザイナに表示されていない場合は、目的のインターフェイスをクラス ビューから実装対象のクラス上にドラッグするだけで、インターフェイスの実装関係が追加されます。このインターフェイスに定義されたメソッドに対してメソッド スタブが自動的に生成されます。クラス デザイナ上でインターフェイスの実装関係が作成されれば、そこからコード エディタを使用して実装コードを記述することも可能です。

継承階層の視覚化

クラス デザイナを使用して、プロジェクトの継承階層を簡単にデザイナ上で視覚化することができます。例えば、継承したクラスの継承元となる基本クラスを表示するには、クラスのヘッダー領域を右クリックして、[Show Base Class] をクリックします。これにより、ダイアグラムに基本クラスが表示されます。

既存のクラスから継承したクラスを表示するには、クラスのヘッダー領域を右クリックして、[Show Derived Types] をクリックします。継承ラインでこのクラスの派生クラスがダイアグラムに表示されます。

Visual Studio とのツールの統合

クラス デザイナは Visual Studio 2005 Team System とシームレスに統合されます。クラス デザイナを通常の Visual Studio ツールを使用するのと同じ領域で、同じ慣れ親しんだ方法で、使用することができます。クラス デザイナで作業する場合、慣れ親しんだドラッグ アンド ドロップ操作でアクセス可能なクラス デザイナ ツールがツールボックスに設定され、[Class Details] ウィンドウや [Properties] ウィンドウから型メンバにアクセスできます。ドラッグ アンド ドロップ操作は、ソリューション エクスプローラやクラス ビューなど標準の Visual Studio ツール ウィンドウでも利用できます。クラス デザイナに加えられたすべての変更は、対応するコード ファイルと直ちに同期化されます。これらのコード ファイルは、通常どおり、Visual Studio コード エディタを使用して開いたり、編集したりすることができます。

クラス図

クラス図は(変更が頻繁に行われる)コードの、その瞬間の姿を現すビューです。クラス図を使用することで、プロジェクトのクラスの相互関係を視覚化し、メンバを編集したりメンバを個々のクラスに追加したりすることができます。クラス図ファイルはプロジェクトの一部として存在し、保持されます。このファイルを使用することで、常にコードを最新の状態で視覚的に参照することができます。

[Project] メニューの [新しいアイテム] をクリックし、次に、クラス図を選択することで、既存のプロジェクトに新しいクラス図を追加することができます。Visual Studio のクラス図は、クラスの構築および編集といったプロセスを支援するツールだといえます。「クラス図」を作成すると、クラス ビューから既存のクラスをドラッグし、クラス デザイナ の画面上にドロップすることで、クラス デザイナ簡単にクラスを追加でます。また、新しいクラスやその他の型を、ツールボックスからクラス デザイナにドラッグして追加することもできます。

クラスやその他の型をクラス デザイナに追加すると、選択や操作が可能な形で表示されます。クラス デザイナからある形を選択すると [Class Details] ウィンドウにその詳細が表示されます。クラス図自体には視覚情報が格納されるだけで、コードの内容に関する情報は一切含まれません。クラス図ファイルを削除してもコードが失われることはありません。

図 2 : クラス図


ツールボックス

クラス図の参照時に、ツールボックスを使用してクラス図に新しいメンバを追加することができます。ツールボックスには、クラス図に追加可能なクラス、構造体、デリゲート、列挙型、およびその他の型が格納されています。ツールボックスからある型を追加すると、適切なコードとコード ファイルがプロジェクトに追加されます。

図 3 : ツールボックス


[Class Details] ウィンドウ

[Class Details] ウィンドウには、クラス デザイナに表示される型に組み込まれているメソッド、プロパティ、フィールド、イベントが表示されます。[Class Details] ウィンドウを使用することで、クラス デザイナでクラスや構造体のメンバをすばやく編集することができます。たとえば、メソッドの戻り値の型の変更、パラメータの追加、またはアクセス レベルの変更といった作業を行うことができます。[Class Details] ウィンドウで行ったすべての変更は、直ちにコードに反映されます。

図 4 : [Class Details] ウィンドウ

まとめ

クラス デザイナは Visual Studio 2005 Team System の新しいツールです。このツールを使用することで、プロジェクトのクラスとインターフェイスをすばやく作成し、構成することができます。このホワイト ペーパーでは、既存のコードの理解、クラス デザイン、コードのレビューとリファクタリング、ダイアグラムのドキュメント化など、クラス デザイナの用途の中でも最も基本的なシナリオの一部を紹介しました。クラス デザイナの機能について理解を深め、ソフトウェア開発用のこの新しいツールを有効に活用することをお勧めします。

Visual Studio Team System の詳細については、以下のトピックを参照してください。


この情報は役に立ちましたか。
(残り 1500 文字)