오브젝트 10장

송은우·2022년 10월 17일
0

TIL

목록 보기
29/61

상속 합성

중복을 줄여라 dry
상속은 자식 클래스의 메서드 안에서 super를 통해 호출 안 하도록 만든다.
부모클래스의 변경에 의해 자식 클래스가 변경을 받는 것이 크다. 상속은 강한 결합도가 높아진다.

부모 클래스의 메서드가 자식 크랠스의 내부 구조에 대한 규칙을 깨뜨릴 수 있다.
자식 클래스가 부모 클래스의 메서드를 오버라이딩 할 경우 부모 클래스가 자신의 메서드를 사용하는 방법에 자식 클래스가 결합될 수 있다.
상속을 위해서라면 클래스를 상속을 위해 설계해야 하고, 문서화 해야 한다.
아니면 상속을 금지시켜야 한다.

상속은 코드 재사용을 위해 캡슐화를 위반해야 한다.
상속하면 자식, 부모의 구현을 영원히 변경하지 않거나, 동시에 변경할 수밖에 없다.
추상화에 의존한다.
차이를 메서드로 추출해라
중복 코드를 그대로 부모 클래스로 올리고, 차이를 호출하는 템플릿 메서드 같은 느낌으로 만들어버려라

추상화가 핵심이다.
추상화로 모든 관계를 정리해버리면 정말 간단해진다
의도를 드러내는 명칭을 사용.
클래스 사이의 상속은 클래스간 인스턴스 변수에도 강하게 결합됨

차이에 의한 프로그래밍
중복 코드를 줄이고, 재사용 하는 것이 목적. 중복을 위로 모으고, 아래쪽에는 템플릿메서드

profile
학생의 마음가짐으로 최선을 다하자

0개의 댓글