UML から C# への変換

UML から C# への変換により、UML モデル要素が C# コードに変換されます。

有効な変換ソース

次の UML 要素が、UML から C# への変換での有効なソースとなります。
  • モデル
  • パッケージ
  • クラス
  • 列挙型
  • インターフェース

変換構成を作成または編集するときに、C# コードに変換するモデル要素を指定できます。 この変換では、コンテナーおよびそのモデル要素を両方選択した場合、または同一のモデル要素を 2 回選択した場合にエラー・メッセージが生成されます。

注: 後方変換を有効にする場合は、 変換ソースとしてモデルまたはルート・パッケージを指定する必要があります。 C# から UML への変換 (後方変換) では、C# ソース・オブジェクトを UML オブジェクトに変換し、指定した UML モデルにそれらのオブジェクトを保管します。

変換ソースで有効な名前

UML ソースの各要素の名前は、小文字、大文字、または下線 (_) で開始できます。 後続の文字には、小文字、大文字、または数値を使用できます。 変換では、数値または無効文字で開始される名前に対して、下線 (_) を前につけます。

生成されたコードの読みやすさを改善し、UML モデルと生成されたコード間の差異を最小限にするには、ソースの UML モデルにある無効な名前を訂正してから変換を適用する必要があります。

有効な変換ターゲット

有効な変換ターゲットは、インポートされた Visual Studio C# プロジェクトです。 新しいターゲット・コンテナーを作成する場合は、.NET ソリューションのインポートを開始します。 .NET ソリューションは、インポートされる Visual Studio で開く必要があります。

UML モデル要素の変換

以下の表には、UML から C# への変換により、どのように UML モデル要素が C# コードに変換されるかがリストされています。 一部の UML 要素は、正しいステレオタイプが適用された複数のコード要素に変換できます。

UML モデル要素 C# コード要素
関連 クラス属性
クラス クラス、構造体、または委譲
列挙 列挙型
汎化関係 クラス継承
操作 メソッドまたはインデクサー
パッケージ 名前空間
パラメーター メソッド引数
プロパティー クラス属性、C# プロパティー、またはイベント
注:

名前にピリオドまたはスペースが含まれている UML モデル内の UML パッケージは、名前に下線が含まれた C# の名前空間に変換されます。 この変換の動作により、包含する要素に対して単一の名前空間が保持されます。 例えば、UML パッケージ com.ibm.samples に C1 という名前のクラスが含まれているとします。 UML から C# への変換を適用すると、UML クラス C1 を表す C# の成果物は、以下の名前空間で宣言されます。

namespace com_ibm_samples

この例で 3 つの名前空間を作成したい場合は、UML モデル内に 3 つの別々のパッケージを作成する必要があります (例: com、ibm および samples)。 上記の場合、com は ibm フォルダーを収容する親フォルダーであり、ibm には samples フォルダーが収容されます。 変換後の結果として、コード内に一連のネストされた名前空間ができます。

マッピング・モデルを使用すると、UML パッケージからフォルダーを生成し、クラスやその他の成果物の出力を制御できます。 例えば、マッピング・モデルを使用して、複数の C# クラスを単一のファイルに生成できます。

変換出力のロケーション

変換では、変換のターゲットとして指定した C# プロジェクトおよび C# プロジェクト・フォルダー内に C# コード・ファイルを生成します。

チーム・サポートとの統合

変換は、ファイルの自動チェックアウトや新規ファイルの追加を可能にする IBM® Rational® Team Concert、CVS、Rational ClearCase®、および Rational ClearCase LT バージョン管理システムとの統合機能を提供します。構成管理システムを使用するには、チーム機能を有効にする必要があります。


フィードバック