-
리팩토링 - 코드의 구린내My-Book(History) 2017. 1. 10. 23:46반응형
잘못된 소속
- 객체의 핵심은 데이터와 그 데이터를 사용하는 프로세스를 묶는 기술이다.
- 리팩토링을 하는 도중 특정 메소드가 호출하는 클래스가 많을 경우 문제의 메소드가 접근하는
데이터가 어느 클래스에 많이 사용하는지 파악하여 해당 클래스로 옮겨라
중복 코드
- 한 클래스의 두 하위클래스에 같은 코드가 들어 있는 경우 메소드 추출(공동로직을 빼네어 메소드 처리)
기법으로 중복을 없앤 후 메소드 상향 기법을 적용하면 된다.
- 상향시 조금 다른 로직이 있다면 그 메서드를 상위 클래스에서 abstract 시켜라
장황한 메소드
- 최적의 상태로 장수하는 프로그램을 보면 공통적으로 메소드 길이가 짧다.
- 메소드에 매개변수와 임시변수가 많으면 메소드 추출하기 까다로워진다.
- 리팩토링 기법을 사용했음에도 여전히 임시변수와 매개변수가 너무 많다면 켄트 백의 메소드 객체 전환 기법을 사용하라.
방치된 상속물
- 하위 클래스가 상속 클래스로 부터 상속 받은 메소드 혹은 데이터를 더이상 쓰지 않거나 필요없을땐 메소드, 필드 하향 기법을 사용하라.
반응형'My-Book(History)' 카테고리의 다른 글
리팩토링 - 메소드 정리 (0) 2017.01.11 리팩토링 - 리팩토링 기법 카탈로그에 대해 (0) 2017.01.10 켄트 벡의 구현 패턴 - 설계 (0) 2016.11.10 켄트 벡의 구현 패턴 - 메소드 (0) 2016.10.29 켄트 벡의 구현 패턴 - 행위 (0) 2016.10.29