7.막연한 범용 코드 Speculative Generality

[ 2017-08.16 작성 ]

일반적으로 메서드의 유일한 사용자가 테스트 케이스로 작성된 경우를 발견할 수 있습니다. 시스템의 다른 부분에서 필요로하는 기능이 포함되어 있지 않으면 이러한 메서드는 제거해야 합니다

때로는 코드가 구현되지 않는 미래의 필요한 기능을 지원하기 위해 "경우에 따라"작성됩니다. 결과적으로 코드를 이해하고 지원하기가 어려워집니다.

필요하지 않으면 기능 개발해서는 안되는 말
테스트 케이스로만 작성된 코드

리펙토링 방법

  • 사용되지 않은 추상클래스를 제거하려면 Collapse Hierarchy(계층축소)
  • Inline Class를 통해 다른 클래스에 기능을 불필요하게 위임 할 필요가 없습니다. Inline Class를 사용하여 제거 하십시오.
  • 사용되지 않은 매개 변수가 있는 메서드는 매개 변수 제거를 하십시오.
  • 사용되지 않은 필드는 간단히 삭제할 수 있습니다.