ProgramingTip

결합 및 유동

bestdevel 2020. 11. 12. 19:26
반응형

결합 및 유동


저는 결합과 플로리스트의 개념을 간결한 정의로 요약합니다. 쉬운 설명을 누군가에게 짧고 이해하기 쉬운 설명을 줄 수 있습니까 ( 여기여기 에있는 Wikipedia의 정의보다 짧음 )? 그들은 어떻게 상호 작용합니까?

감사합니다.

누구에게 좋은 짧은 예가 있습니까?


커플 링

  • 영상 : 당신과 편의점에있는 남자. 당신은 각각의 목표를 달성하기 위해 잘 정의 된 프로토콜을 통해 의사 소통을합니다. 당신은 돈을 지불하고, 그는 당신이 Cheetos 가방을 가지고 나갈 수 있습니다. 시스템을 중단하지 않고 둘 중 하나를 교체 할 수 있습니다.

  • 타이트 : 당신과 당신의 아내.

부 유력

  • 낮음 : 편의점. 가스에서 우유, ATM 뱅킹 에까지 모든 것을 찾으십시오. 제품과 서비스는 거의 거의 모든 한곳에 모아 두는 거의 모두 한곳만으로는 비용 증가와 품질이 있습니다.

  • 높음 : 치즈 가게. 그들은 치즈를 판다. 다른 건 없습니다. 이길 수 없습니다.


커플 링-모듈 (패키지, 클래스, 메소드)이 다른 모듈에 얼마나 의존하는지 측정합니다. 결합을 줄이거 나 주어진 모듈이 시스템의 다른 모듈에 의존하는 양을 줄입니다.

응집력-모듈의 멤버 (클래스, 메서드, 메서드 내 기능)가 동일한 모듈의 다른 멤버와 얼마나 연관되어 있는지 측정합니다. 해당하는 작업 력을 수행하는 것이 좋습니다.


OO와 관련된 소프트웨어 디자인 개념에 대한 가장 많은 인 논의 중 하나는 Bertrand Meyer의 지향 소프트웨어 구성 입니다.

'커플 링'과 관련하여 그는 다음과 같이 약한 결합 / 소형 인터페이스 규칙을 제공합니다.

두 모듈이 통신하는 경우 가능한 한 약간의 약간의 정보를 교환해야합니다.

플로팅 력과 관련된 Meyer의 자료는 단 하나의 간결한 문장으로 요약 되지는 않지만 Steve McConnell의 Code Complete 에서 나온이 요약 생각합니다.

플로럴 성은 클래스의 모든 루틴 또는 루틴의 모든 코드가 중심 목적을 얼마나 정확하게 지원합니다.


커플 링은 타인에 대한 의존을 의미합니다.
그 자체로 완전성을 의미합니다.


커플 링을 측정하는 빠르고 더러운 방법 은 import(또는 유사한) 진술 을 측정하는을 구석으로 입니다.


"커플 링은 최소화되어야하는 모듈 상호 의존성의 척도입니다." "최대화되어야 할 품질 인 플로링 력은 각 모듈에서 수행하는 활동과 관계에 수행을 수행합니다."

이 문서에서 인용 : http://steve.vinoski.net/pdf/IEEE-Old_Measures_for_New_Services.pdf

참고 URL : https://stackoverflow.com/questions/39946/coupling-and-cohesion

반응형