상속과 합성은 객체지향 프로그래밍에서 가장 널리 사용되는 코드 재사용 기법이다. 상속이 부모 클래스와 자식 클래스를 연결해서 부모 클래스의 코드를 재사용(is-a관계)합성은 전체를 표현하는 객체가 부분을 표현하는 객체를 포함해서 부분 객체의 코드를 재사용 (has-a관계)합성은 구현에 의존하지 않는다는 점에서 상속과 다르다.합성은 내부에 포함되는 객체의 구현이 아닌 퍼블릭 인터페이스에 의존한다. 합성 관계는 객체 사이의 동적인 관계다. 상속으로 인한 조합의 폭발적인 증가기본정책과 부가정책이 있는 경우 기본 정책이 추가되는 경우에 기존에 만들어진 하나의 쌍이 하나 더 만들어지면 되겠지만..만약 부가정책이 추가된다면 엄청나게 많은 조합이 생겨나게 될 것이다이를 클래스 폭발(class explosion) 문제..
[Object] 11장 : 합성과 유연한 설계
상속과 합성은 객체지향 프로그래밍에서 가장 널리 사용되는 코드 재사용 기법이다. 상속이 부모 클래스와 자식 클래스를 연결해서 부모 클래스의 코드를 재사용(is-a관계)합성은 전체를 표현하는 객체가 부분을 표현하는 객체를 포함해서 부분 객체의 코드를 재사용 (has-a관계)합성은 구현에 의존하지 않는다는 점에서 상속과 다르다.합성은 내부에 포함되는 객체의 구현이 아닌 퍼블릭 인터페이스에 의존한다. 합성 관계는 객체 사이의 동적인 관계다. 상속으로 인한 조합의 폭발적인 증가기본정책과 부가정책이 있는 경우 기본 정책이 추가되는 경우에 기존에 만들어진 하나의 쌍이 하나 더 만들어지면 되겠지만..만약 부가정책이 추가된다면 엄청나게 많은 조합이 생겨나게 될 것이다이를 클래스 폭발(class explosion) 문제..
2025.01.30