결합도: Difference between revisions

From IT Wiki
(새 문서: ;Coupling * 응집도(Cohension)과 함께 모듈의 독립성을 판단하는 지표 * '''결합도는 모듈과 모듈간의 상호 결합 정도를 나타낸다.''' * 응집도는...)
 
No edit summary
Line 1: Line 1:
;Coupling
;Coupling


* 응집도(Cohension)함께 모듈의 독립성을 판단하는 지표
* [[응집도|응집도(Cohension)]]와 함께 모듈의 독립성을 판단하는 지표
* '''결합도는 모듈과 모듈간의 상호 결합 정도를 나타낸다.'''
* '''결합도는 모듈과 모듈간의 상호 결합 정도를 나타낸다.'''
* 응집도는 모듈 내부의 기능적인 응집 정도를 나타낸다.
* 응집도는 모듈 내부의 기능적인 응집 정도를 나타낸다.
Line 8: Line 8:
== 종류 ==
== 종류 ==
;자료 결합도 < 스탬프 결합도 < 제어 결합도 < 외부 결합도 < 공통 결합도 < 내용 결합도<ref>아래 내용 출처 [https://raisonde.tistory.com/entry/결합도Coupling과-응집도Cohension 지식잡식 블로그]</ref>
;자료 결합도 < 스탬프 결합도 < 제어 결합도 < 외부 결합도 < 공통 결합도 < 내용 결합도<ref>아래 내용 출처 [https://raisonde.tistory.com/entry/결합도Coupling과-응집도Cohension 지식잡식 블로그]</ref>
* 자료 결합도(Data Coupling)
* '''자료 결합도(Data Coupling)'''
** 모듈간의 인터페이스 전달되는 파라미터를 통해서만 모듈간의 상호 작용이 일어나는 경우
** 모듈간의 인터페이스 전달되는 파라미터를 통해서만 모듈간의 상호 작용이 일어나는 경우
** 깔끔한 Call by value
** 깔끔한 Call by value
* 스탬프 결합도(Stamp Coupling)
* '''스탬프 결합도(Stamp Coupling)'''
** 모듈간의 인터페이스로 배열이나 오브젝트, 스트럭쳐등이 전달되는 경우
** 모듈간의 인터페이스로 배열이나 오브젝트, 스트럭쳐등이 전달되는 경우
* 제어 결합도(Control Coupling)
* '''제어 결합도(Control Coupling)'''
** 단순히 처리를 해야할 대상인 값만 전달되는게 아니라 어떻게 처리를 해야 한다는 제어 요소(DCD, Flag등)이 전달되는 경우.
** 단순히 처리를 해야할 대상인 값만 전달되는게 아니라 어떻게 처리를 해야 한다는 제어 요소(DCD, Flag등)이 전달되는 경우.
* 외부 결합도(External Coupling)
* '''외부 결합도(External Coupling)'''
** 어떤 모듈에서 반환한 값을 다른 모듈에서 참조해서 사용하는 경우
** 어떤 모듈에서 반환한 값을 다른 모듈에서 참조해서 사용하는 경우
* 공통 결합도(Common Coupling)
* '''공통 결합도(Common Coupling)'''
** 파라미터가 아닌 모듈 밖에 선언되어 있는 전역 변수를 참조하고 전역변수를 갱신하는 식으로 상호작용하는 경우
** 파라미터가 아닌 모듈 밖에 선언되어 있는 전역 변수를 참조하고 전역변수를 갱신하는 식으로 상호작용하는 경우
* 내용 결합도(Content Coupling)  
* '''내용 결합도(Content Coupling)'''
** 다른 모듈 내부에 있는 변수나 기능을 다른 모듈에서 사용 하는 경우
** 다른 모듈 내부에 있는 변수나 기능을 다른 모듈에서 사용 하는 경우

Revision as of 00:52, 6 May 2019

Coupling
  • 응집도(Cohension)와 함께 모듈의 독립성을 판단하는 지표
  • 결합도는 모듈과 모듈간의 상호 결합 정도를 나타낸다.
  • 응집도는 모듈 내부의 기능적인 응집 정도를 나타낸다.
  • 결합도는 낮을수록 좋고, 응집도는 높을수록 좋다.

종류

자료 결합도 < 스탬프 결합도 < 제어 결합도 < 외부 결합도 < 공통 결합도 < 내용 결합도[1]
  • 자료 결합도(Data Coupling)
    • 모듈간의 인터페이스 전달되는 파라미터를 통해서만 모듈간의 상호 작용이 일어나는 경우
    • 깔끔한 Call by value
  • 스탬프 결합도(Stamp Coupling)
    • 모듈간의 인터페이스로 배열이나 오브젝트, 스트럭쳐등이 전달되는 경우
  • 제어 결합도(Control Coupling)
    • 단순히 처리를 해야할 대상인 값만 전달되는게 아니라 어떻게 처리를 해야 한다는 제어 요소(DCD, Flag등)이 전달되는 경우.
  • 외부 결합도(External Coupling)
    • 어떤 모듈에서 반환한 값을 다른 모듈에서 참조해서 사용하는 경우
  • 공통 결합도(Common Coupling)
    • 파라미터가 아닌 모듈 밖에 선언되어 있는 전역 변수를 참조하고 전역변수를 갱신하는 식으로 상호작용하는 경우
  • 내용 결합도(Content Coupling)
    • 다른 모듈 내부에 있는 변수나 기능을 다른 모듈에서 사용 하는 경우
  1. 아래 내용 출처 지식잡식 블로그