refactoring-example
리팩토링 책(마틴 파울러 저)을 보면서 연습할 수 있도록 예제를 정리하는 저장소 입니다.
Chapter 06 메서드 정리
- 메서드 추출
- 메서드 내용 직접 삽입
- 임시 변수 내용 직접 삽입
- 임시 변수를 메서드 호출로 전환
- 직관적 임시 변수 사용
- 임시 변수 분리
- 매개 변수로의 값 대입 제거
- 메서드를 메서드 객체로 전환
- 알고리즘 전환
Chapter 07 객체 간의 기능 이동
Chapter 08 데이터 체계화
- 필드 자체 갭슐화
- 데이터 값을 객체로 전환
- 값을 참조로 전환
- 참조를 값으로 전환
- 배열을 객체로 전환
- 관측 데이터 복제
- 클래스의 단방향 연결을 양방향으로 전환
- 클래스의 양방향 연결을 단방향으로 전환
- 마법 숫자 기호를 상수로 전환
- 필드 캡슐화
- 컬렉션 캡슐화
- 레코드를 데이터 클래스로 전환
- 분률 부호를 클래스로 전환
- 분류 부호를 하위 클래스로 전환
- 분류 부호를 상태/전략 패턴으로 전환
- 하위 클래스를 필드로 전환
Chapter 09 조건문 간결화
Chapter 10 메서드 호출 단순화
- 메서드명 변경
- 상태 변경 메서드와 값 반환 메서드를 분리
- 메서드를 매개변수로 전환
- 매개변수를 메서드로 전환
- 객체를 통채로 전달
- 매개변수 세트를 메서드로 전환
- 매개변수 세트를 객체로 전환
- 쓰기 메서드 제거
- 생성자를 팩토리 메서드로 전환
- 하향 타입 변환을 캡슐화
- 에러 부호를 예외 통지로 교체
- 예외 처리를 테스트로 교체