목차

Previous


1회차이기에 요약 정리보다는 책 내용을 그대로 작성하며 책에서 하고자하는 말을 개인적으로 암기및 이해하고자 하는 목적. 회차를 거듭하면서 요약&정리를 병핼할 예정

개요


컴포넌트는 배포 단위로 시스템의 구성요소로 배포할 수 있는 가장 작은 단위이다.

자바의 경우 jar 파일을 컴포넌트라 할 수 있다. (루비는 gem, 닷넷은 DLL)

모든 언어에서 컴포넌트는 배포할 수 있는 단위 입자라 생각하면 된다.

여러 컴포넌트를 서로 링크해 실행 가능한 단위 파일로 생성할 수도 있다. 혹은 여러 컴포넌트를 서로 묶어 war 파일과 같은 단일 아카에브로 만들 수도 있다. 또는 컴포넌트 각각을 jar, dll 같이 동적으로 로드할 수 잇는 플러그인이나 exe 파일로 만들어 독립적으로 배포할 수도 있다.

중요한 점은 컴포넌트가 어떻게 배포되든, 잘 설계된 컴포넌트라면 반드시 독립적으로 배포 가능하고, 그렇기에 독립적으로 개발 가능한 능력을 갖춰야 한다는 점이다.

컴포넌트 응집도


어떤 클래스를 컴포넌트에 포함시켜야 할 지 결정해야 하는건 매우 중요하다.

그렇기에 컴포넌트 응집도와 관련된 세 가지 원칙을 알아볼 것이다.