🌈 Chapter 10: 상속과 코드 재사용
📚 상속과 중복 코드
🎈 DRY 원칙
- 중복 코드는 변경을 방해한다.
- 중복 코드가 가지는 가장 큰 문제는 코드를 수정하는 데 필요한 노력을 몇 배로 증가시킨다는 것이다. 중복 코드의 묶음을 찾고 찾았다면 찾아낸 모든 코드를 일관되게 수정해야 한다. 모든 중복코드를 개별적으로 테스트해서 동일한 결과를 내놓는지 확인해야만 한다.
- 중복 코드는 수정과 테스트에 드는 비용을 증가시킨다.
- 중복 여부를 판단하는 기준은 변경으로 요구사항이 변경됐을 때 두 코드를 함께 수정해야 한다면 이 코드는 중복이다. 중복 여부를 결정하는 기준은 코드가 변경에 반응하는 방식이다.
- DRY는 반복하지 마라라는 뜻의 Don't Repeat Yourself의 첫 글자를 모아 만든 용어로 동일한 지식을 중복하지 말라는 것이다.
DRY 원칙은 모든 지식은 시스템 내에서 단일하고, 애매하지 않고, 정말로 믿을 만한 표현 양식을 가져야 한다.
- DRY 원칙은 한 번, 단 한 번(Once and Only Onc) 원칙 또는 단일 지점 제어(Single Point Control) 원칙이라고도 부른다.
🎈 중복과 변경
🐶 중복 코드 살펴보기
- 예제 생략.
- 책 310 ~ 313 페이지 참고
🐶 중복 코드 수저아기
- 중복 코드가 가지는 단점은 많은 코드 더미 속에서 어떤 코드가 중복인지를 파악하는 일은 쉬운 일이 아니다.
- 중복 코드는 항상 함께 수정돼야 하기 때문에 수정할 때 하나라도 빠트린다면 버그로 이어질 것이다.
- 중복 코드는 새로운 중복 코트를 부른다. 중복 코드를 제거하지 않은 상태에서 코드를 수정할 수 있는 유일한 방법은 새로운 중복 코드를 추가하는 것뿐이다.
- 중복 코드가 늘어날수록 애플리케이션은 변경에 취약해지고 버그가 발생할 가능성이 높아진다. 또한, 버그의 수는 증가하며 그에 비례해 코드를 변경하는 속도는 점점 더 느려진다.