IBM® Rational® Rhapsody®는
코드 생성 중에 원래 코드 구조에서의 요소 순서를 보존할 수 있습니다.
이 기능을 사용하면 클래스 멤버 및 글로벌 요소의 순서를 변경할 수 있으며,
Rational Rhapsody는 이 변경사항을
"준수"합니다.
코드 준수에는 다음의 추가 기능이 있습니다.
- 코드 생성은 파일의 올바른 위치에 텍스트 단편을 재생성합니다.
- 리버스 엔지니어링은 #ifdef-s를
verbatim 텍스트로 모델에 가져옵니다.
- 컴파일러에 의해 표시되는 #ifdef-s의 분기는
논리 요소로 모델링됩니다.
- 컴파일러에 의해 표시되지 않는 #ifdef-s의 분기는
verbatim 텍스트로 모델링됩니다.
Rational Rhapsody에서 코드가 생성될 때,
원래의 코드와 유사합니다. 이 기능은 모델링의 모든 이점을 받으면서 수동으로 작성된
코드나 자동 생성된 코드를 사용하는 데 완전한 융통성을
제공합니다. 원래 코드에서의 글로벌 요소 순서, 위치 및 종속성을
모델에서 준수하는 방식으로 C++ 및 C 코드를 모델로
리버스 엔지니어링할 수 있습니다.
참고: 코드 준수 기능은
IBM Rational Rhapsody Developer for C 및
IBM Rational Rhapsody Developer for C++에 적용되며 이 제품의
리버스 엔지니어링 및 라운드트립 기능에 적용됩니다.
제품 버전 7.2 현재, 사용자가 작성하는 새 프로젝트에는
기본적으로 코드 준수 기능이 활성화됩니다. 이전 프로젝트에 대해
코드 준수를 활성화하려면
코드 구조 보존 기능 활성화의 내용을 참조하십시오.
또한 코드 구조를 준수하고 Rational Rhapsody에서 코드가
라운드트립될 때 이 구조를 보존하는 Rational Rhapsody 모델로
코드를 라운드트립할 수 있도록 Rational Rhapsody Developer for C 및 Rational Rhapsody Developer for C++을
설정할 수 있습니다.
C++ 및 C에서 요소 순서를 변경한 경우
준수 모드에서의 라운드트립은 다음 코드 생성에서 다음 요소의 순서를
보존합니다.
- 글로벌 요소
- 클래스 요소
- #includes 및 전방 선언
- 자동 생성된 오퍼레이션(상태 차트 및
인스트루먼테이션 코드 제외)