변환 구성을 작성하거나 편집할 때 변환이 C# 코드로 변환해야 하는 모델 요소를 지정할 수 있습니다. 컨테이너와 해당 모델 요소를 둘 다 선택하거나 동일한 모델 요소를 두 번 선택하면 변환에서 오류 메시지가 생성됩니다.
UML 소스 요소의 이름은 소문자, 대문자 또는 밑줄(_)로 시작할 수 있습니다. 후속 문자는 소문자, 대문자 또는 숫자가 될 수 있습니다. 변환은 숫자나 올바르지 않은 문자로 시작하는 이름에 밑줄(_) 접두부를 붙입니다.
생성된 코드의 읽기 가능성을 개선하고 UML 모델과 생성된 코드 사이의 차이를 최소화하려면 변환을 적용하기 전에 소스 UML 모델에서 올바르지 않은 이름을 정정하십시오.
올바른 변환 대상은 가져온 Visual Studio C# 프로젝트입니다. 새 대상 컨테이너를 작성하는 경우 .NET 솔루션 가져오기를 시작합니다. .NET 솔루션은 가져올 Visual Studio에서 열려야 합니다.
다음 표에서는 UML에서 C#으로 변환이 UML 모델 요소를 C# 코드로 변환하는 방법을 나열합니다. 일부 UML 요소는 올바른 스테레오타입이 적용되는 여러 코드 요소로 변환될 수 있습니다.
| UML 모델 요소 | C# 코드 요소 |
|---|---|
| 연관 관계 | 클래스 속성 |
| 클래스 | 클래스, 구조체 또는 위임 |
| 열거 | Enum |
| 일반화 관계 | 클래스 상속 |
| 오퍼레이션 | 메소드 또는 색인기 |
| 패키지 | 네임스페이스 |
| 매개변수 | 메소드 인수 |
| 특성 | 클래스 속성, C# 특성 또는 이벤트 |
이름에 마침표나 공백이 있는 UML 모델의 UML 패키지는 밑줄을 포함하는 이름으로 C# 네임스페이스로 변환됩니다. 이 변환 동작은 포함된 요소에 대해 단일 네임스페이스를 보존합니다. 예를 들어, UML 패키지 com.ibm.samples에 클래스 C1이 포함된다고 가정합니다. UML에서 C#으로 변환을 적용하면 UML 클래스 C1을 표시하는 C# 아티팩트는 다음 네임스페이스에서 선언됩니다.
namespace com_ibm_samples
세 개의 네임스페이스를 작성하려는 인스턴스에서는 UML 모델에서 세 개의 독립 패키지를 작성해야 합니다(예: com, ibm 및 samples). 이 경우 com은 ibm 폴더를 포함하는 상위 폴더이고 ibm은 samples 폴더를 포함합니다. 변환 후 결과는 코드에서 일련의 중첩 네임스페이스입니다.
맵핑 모델을 사용하여 UML 패키지에서 폴더를 생성하고 클래스 및 기타 아티팩트의 출력을 제어할 수 있습니다. 예를 들어, 맵핑 모델을 사용하여 여러 개의 C# 클래스를 단일 파일로 생성할 수 있습니다.
변환은 사용자가 변환의 대상으로 지정하는 C# 프로젝트 및 C# 프로젝트 폴더에서 C# 코드 파일을 생성합니다.