박수완
1. 📌 핵심 개념 정리
✅ 요약하기
- 첫째, 둘러보자
클래스를 철저히 이해하고 리팩터링하려면 훨씬 높은 테스트 커버리지가 필요하다.
- 둘째, 고쳐보자
주석 법적인 정보는 필요하므로 라이선스 정보와 저작권은 보존한다.
소스 코드 제어 도구를 사용하므로 변경 이력은 없애도 괜찮다.
-
import 문
java.text.* 와 java.util.*로 줄여도 된다.
-
Javadoc 주석
여러 언어를 사용하면 제대로 모양새를 맞추기 어렵다. 주석 전부를 pre 로 감싸면 형식이 그대로 유지된다.
-
서술적인 용어
일련번호라는 용어는 날짜보다 제품 식별 번호로 더 적합하다.
-
enum으로 변경
특정 버전에서 직렬화한 클래스를 다른 버전에서 복원하지 않는 편이 안전하다.
-
클래스
추상 클래스는 구체적인 구현 정보를 포함할 필요가 없다. 기반 클래스는 파생 클래스를 몰라야 바람직하다. ABSTRACT FACTORY 패턴을 적용해 생성한다.
-
메서드
추상 메서드로 위임하는 정적 메서드는 SINGLETON, DECORATOR, ABSTRACT FACTORY 패턴 조합을 사용한다.메서드 인수로 플래그는 바람직하지 못하다. 메서드는 단순화하고 서술적인 표현으로 가독성을 높인다. 중복이 있으면 새 메서드를 생성해 중복을 없앤다.
-
인수와 변수 선언에서 final 키워드 제거
실질적인 가치는 없으면서 코드만 복잡하게 만든다고 판단했기 때문이다.