次に、設計に便利な機能を紹介します。一般的に「設計」という言葉を聞くと、アプリケーションの作成前の段階を思い浮かべることがほとんどだと思います。ですが、ここではアプリケーション完成後について説明します。

設計で使える便利な機能

図16●シーケンス図(シーケンス ダイアグラム)の生成オプション
図16●シーケンス図(シーケンス ダイアグラム)の生成オプション

 なぜなら、VS2010のUML(Unified Modeling Language)モデル図の作成機能には、クラス図やシーケンス図からソースコードのひな型を生成する機能がありません。しかし、ソースコードからシーケンス図を作成する機能はあり、その機能はとても優れているといえます。この点に絞って紹介していきます。

 使い方は簡単で、シーケンス図のルートにしたいメソッドを含んだファイルをコードエディタ上に開きます。ここでは、前半で作成した簡易電卓のForm1.csファイルをコードエディタで開き、+ボタンクリックのイベントハンドラー(AddButton_Clickメソッド)の定義部分に移動してみましょう。

図17●作成されたシーケンス図
図17●作成されたシーケンス図
[画像のクリックで拡大表示]

 コードエディタ上のコンテキストメニューから「シーケンス図の作成」を選択すると、シーケンス図の生成オプション画面が表示されます(図16)。たどる深さの設定や、シーケンス図に含めるメソッド、除外するメソッドなどを設定できます。初期設定のまま生成してみると、ソースコード上での呼び出し階層に従ったシーケンス図が作成されます(図17)。既存のソースコードからシーケンス図を生成できる機能を備えるツールは多くないので、この機能だけでも重宝するでしょう。

 ただし、注意点もあります。シーケンス図は、メソッド呼び出しの依存関係を分析して生成しています。コンパイル時点で依存関係のない呼び出しをシーケンス図に含めることはできません。