Skip to main content

박수완

1. 📌 핵심 개념 정리

✅ 요약하기

  1. 첫째, 둘러보자

클래스를 철저히 이해하고 리팩터링하려면 훨씬 높은 테스트 커버리지가 필요하다.


  1. 둘째, 고쳐보자

    • 주석

    법적인 정보는 필요하므로 라이선스 정보와 저작권은 보존한다. 소스 코드 제어 도구를 사용하므로 변경 이력은 없애도 괜찮다.

  • import 문

    java.text.* 와 java.util.*로 줄여도 된다.

  • Javadoc 주석

    여러 언어를 사용하면 제대로 모양새를 맞추기 어렵다. 주석 전부를 pre 로 감싸면 형식이 그대로 유지된다.

  • 서술적인 용어

    일련번호라는 용어는 날짜보다 제품 식별 번호로 더 적합하다.

  • enum으로 변경

    특정 버전에서 직렬화한 클래스를 다른 버전에서 복원하지 않는 편이 안전하다.

  • 클래스

    추상 클래스는 구체적인 구현 정보를 포함할 필요가 없다. 기반 클래스는 파생 클래스를 몰라야 바람직하다. ABSTRACT FACTORY 패턴을 적용해 생성한다.

  • 메서드

    추상 메서드로 위임하는 정적 메서드는 SINGLETON, DECORATOR, ABSTRACT FACTORY 패턴 조합을 사용한다.메서드 인수로 플래그는 바람직하지 못하다. 메서드는 단순화하고 서술적인 표현으로 가독성을 높인다. 중복이 있으면 새 메서드를 생성해 중복을 없앤다.

  • 인수와 변수 선언에서 final 키워드 제거

    실질적인 가치는 없으면서 코드만 복잡하게 만든다고 판단했기 때문이다.