커플링이란 무엇인가요? 모듈의 커플링에는 무엇이 포함되나요?
커플링은 '블록 간 연결'이라고도 합니다. 이는 소프트웨어 시스템 구조에서 모듈 간 상호 연결의 근접성을 측정하는 것을 의미합니다. 모듈 간의 연결이 가까울수록 결합력은 강해지고 모듈의 독립성은 나빠집니다. 모듈 간의 결합 수준은 모듈 간 인터페이스의 복잡성, 호출 방법 및 전송되는 정보에 따라 달라집니다. 모듈 커플링에는 여러 유형이 있습니다.
(1) 직접 결합이 없습니다. 직접적인 결합이 없다는 것은 두 모듈 사이에 직접적인 관계가 없으며 서로 다른 모듈의 제어 및 호출이 적용되며 둘 사이에 정보가 전달되지 않음을 의미합니다. 따라서 모듈 간의 결합이 약할수록 모듈 독립성은 높아집니다.
(2) 데이터 결합. 데이터 결합이란 두 모듈 사이에 호출 관계가 있다는 뜻으로, 단순한 데이터 값이 전송되는 것으로, 이는 고급 언어의 값 전송과 동일하다. 이러한 결합 정도는 낮고 모듈의 독립성은 높습니다.
(3) 커플링을 표시합니다. 태그 결합이란 두 모듈 간에 데이터 구조가 전송되는 것을 의미합니다. 예를 들어 고급 언어의 배열 이름, 레코드 이름, 파일 이름 등이 실제로 전송되는 것은 이 데이터 구조의 주소입니다. 두 모듈 모두 이러한 데이터 구조를 인식하고 필요에 따라 작동해야 하므로 이해가 어렵습니다. "정보 은닉" 방법을 사용하여 데이터 구조와 이에 대한 작업을 하나의 모듈에 집중하여 이러한 결합을 제거할 수 있습니다. 그러나 때로는 다른 기능 때문에 태그 결합을 피할 수 없습니다.
(4) 제어 커플링. 제어 결합이란 한 모듈이 다른 모듈을 호출할 때 제어 변수(스위치, 플래그 등)를 전달하고, 호출된 모듈은 해당 제어 변수의 값을 통해 모듈 내 특정 기능을 선택적으로 실행하는 것을 의미합니다. 따라서 호출되는 모듈에는 여러 함수가 있어야 하며, 어떤 함수가 작동하는지는 호출 모듈에 의해 제어됩니다.