12장

    [리펙터링 2판] 12장 - 상속 다루기

    상속은 발등에 불이 떨어져야 비로소 잘못 사용했음을 알아차리는 경우가 많다. 상속은 막강한 도구지만, 잘못된 곳에서 사용되거나 나중에 환경이 변해 문제가 생기기도 한다. 12. 1 매서드 올리기 내용 중복된 메서드를 찾아 제거하여 메서드 올리기를 사용한다. 적용 메서드들의 본문 코드가 똑같을 때 매서드 올리기를 적용하면 된다. 가장 이상하고 복잡한 경우에는 메서드의 본문에서 참조하는 필드들이 서브클래스에만 있는 경우 슈퍼클래스로 올린 후에 메서드를 올려야 한다. 결과 중복 코드를 제거하는 것은 중요하기에 효과를 볼 수 있다. 예시 Before class Employee {...} class Salesman extends Employee { get name() {...} } class Engineer ex..