인터페이스 정의언어, 구현언어로 매핑을 지원.
객체지향 개념. C++의 class와 비슷하지만, JAVA의 interface와 더욱 유사.
interface Sample {
attribute long a; // attribute 키워드 없으면 에러.
readonly attribute string b;
string oper1();
oneway void oper2();
void oper3() raises(UsrException);
};
간단히 뭐 이런 식.
상속 가능, 다중 상속도 가능, 단 상속 받을 interface간에 같은 이름이 있으면 안됨.
interface A {
attribute long l;
void oper();
};
interface B {
attribute long l; // 이름 충돌 에러 발생
};
interface C: A, B {
void oper(); // 재정의 시도 에러 발생
};
Scop을 정하고 계층화 하는 module을 사용할 수도 있음.
module CF {
interface DomainManager{};
module CF1{
interface Resource{};
};
};
CF::DomainManager, CF:CF1:Resource 이런 식으로 접근이 가능함.
이렇게 만들어진 IDL 파일과 실제 구현과의 mapping은 IDL 컴파일러가 하는 것 같은데,
그 과정이 궁금함. 프로그래머는 어느 수준까지 정의해 줘야 하는가?
컴퓨터 과학!/SCA2007. 12. 9. 18:05