CORBA 스펙에서는
ORB 벤더가 IDL 컴파일러 제품에 대한 통일된 이름 지정 규칙을 사용하도록
강요하지 않습니다.
게다가 이 제품이 포함해야 하는 것도 정의하지 않습니다.
따라서 이 문제를 처리하기 위해 IBM® Rational® Rhapsody®에서
특성 세트가 작성되었습니다.
모든 IDL 컴파일러는
스펙 파일(함수 헤더 및 시그니처만 있는)과 구현 파일(함수 정의 및 본문이 있는)을
생성합니다. 주어진 CORBA 인터페이스에 대해,
IDL 컴파일러는 다음 코드를 작성할 수 있습니다.
- 스켈레톤 코드 - 서버측 코드.
두 개의 파일(스펙 및 구현용 파일)을 빌드할 수 있습니다.
- 스텁 코드 - 클라이언트측 코드. 두 개의
파일(스펙 및 구현용 파일)을 빌드할 수 있습니다.
IDL 컴파일러가 네 개의 파일을
작성할 수 있음을 의미합니다. 이름은 IDL 파일 이름에서 파생됩니다.
예를 들어, TAO로 X.idl IDL 파일을
컴파일하면 다음의 세 파일이 생성됩니다.
- X.hh(스펙 파일)
- XS.cpp(스켈레톤 구현 파일)
- XC.cpp(스텁 구현 파일)
다른 IDL 컴파일러로
동일한 X.idl 파일을 컴파일하면(예: Visibroker)
다음 파일이 생성됩니다.
- X_s.hh(스켈레톤 스펙 파일)
- X_c.hh(스텁 스펙 파일)
- X_s.c(스켈레톤 구현 파일)
- X_c.c(스텁 구현 파일)
IDL 컴파일러 파일 이름 지정
동작을 정의하기 위해 Rational Rhapsody에서
다음 특성이 작성되었습니다.
- ImplementationExtension은 구현 파일의
확장을 지정합니다. 기본값은 .cpp입니다.
- SkeletonImplementationName은
스켈레톤 구현 파일에 대한 이름 지정 동작을 정의하는 문자열입니다.
기본값은 $interfaceS입니다.
- SkeletonSpecificationName은
스켈레톤 스펙 파일에 대한 이름 지정 동작을 정의하는 문자열입니다.
기본값은 $interfaceS입니다.
- SpecificationExtension은
스펙 파일의 확장을 지정하는 문자열입니다. 기본값은
.h입니다.
- StubImplementationName은
스텁 구현 파일에 대한 이름 지정 동작을 정의하는 문자열입니다.
기본값은 $interfaceC입니다.
- StubSpecificationName은
스텁 스펙 파일에 대한 이름 지정 동작을 정의하는 문자열입니다.
기본값은 $interfaceC입니다.