yepdi / TIL

Today I Learn
0 stars 0 forks source link

오브젝트 - 상속과 코드 재사용 #14

Open yepdi opened 2 years ago

yepdi commented 2 years ago

상속과 중복 코드

중복과 변경

상속을 위한 경고

  1. 자식 클래스의 메서드 안에서 super 참조를 이용해 부모 클래스의 메서드를 직접 호출할 경우 두 클래스는 강하게 결합된다. super 호출을 제거할 수 있는 방법을 찾아 결합도를 제거하라
  2. 상속받은 부모 클래스의 메서드가 자식 클래스의 내부 구조에 대한 규칙을 깨트릴 수 있다
  3. 자식 클래스가 부모 클래스의 메서드를 오버라이딩할 경우 부모 클래스가 자신의 메서드를 사용하는 방법에 자식 클래스가 결합될 수 있다
  4. 클래스를 상속하면 결합도로 인해 자식 클래스와 부모 클래스의 구현을 영원히 변경하지 않거나, 자식 클래스와 부모 클래스를 동시에 변경하거나 둘 중 하나를 선택할 수밖에 없다.

취약한 기반 클래스 문제

Phone 다시 살펴보기

추상화에 의존하라

차이를 메서드로 추출하라

중복 코드를 부모 클래스로 올려라

차이에 의한 프로그래밍