• 조건문을 간호화 하는 리팩토링 종류
    1. 조건문을 여러 개로 나누는 조건문 쪼개기
    2. 여러 조건 검사가 있는데 결과가 모두 같을 땐 중복 조건식 통합
    3. 조건문 안의 중복 코드를 제거하려면 조건문의 공통 실행 코드 빼내기
    4. 특수한 case 조건문을 명확히 하려면 여러 겹의 조건문을 감시 절로 전환
    5. 복잡한 제어 플래그를 제거하려면 제어 플래그 제거
     

필드 자체 캡슐화

  • 필드에 직접 접근하고 있는데 필드에 대한 결합이 이상해지면 get/set 메소드를 만들어 필드에 접근.
     

객체 간 이동이 가능한 상황 및 상황별 리팩토링 기법

  1. 기능을 넣을 적절한 위치를 찾는 경우
  2. 메서드 이동(Move Method)
  3. 필드 이동(Move Field)
     

     
  • 리팩토링을 실시하기 위한 필수 전제조건은 반드시 견고한 테스트를 해야한다.
  • 적절한 테스트를 작성하면 설령 리팩토링을 하지않더라도 프로그래밍 속도가 월등히 왜 빨라지는 가에 대해서 설명

1. 자가 테스트 코드의 가치

  • 버그를 찾는 데 시간을 많이 소요하는 프로그래머들이 존재
  • 모든 테스트를 완전히 자동화하고 결과를 자체적으로 검사하게 하자.
  • 테스트 스위트(하나의 테스트)는 버그를 찾는 시간을 획기적으로 줄여주는 강력한 버그 감지 도구이다.