2008. 11. 3. 19:41

리팩토링

리팩토링을 안전하게 수행하는 요령
1. 리팩토링과 다른 작업을 분리한다.
   프로그램에 기능을 추가하는 등의 작업을 할 때 리팩토링을 되도록 하지 않는다.
2. 리팩토링 전후에 반드시 테스트를 한다.
   java용 테스팅 프레임워크 junit를 사용하는것이 적절할 수 있다.
3. 한 번에 최소한의 작업만 한다.
   작은 수정을 수행하고 그때마다 테스트를 한다.
4. 기존의 로직에 미치는 영향을 적게 한다.
   이미 정상적으로 동작하는 있는 기존의 코드를 가능한 한 남기고 서서히 진행한다.
5. 반드시 백업을 해 둔다.
   CVS 등 버전별로 보존할 수 있는 구성관리 툴을 사용해서 백업을 한다.

메소드 추출의 순서
1. 적절한 이름의 새 메소드를 만든다.
2. 추출하고 싶은 로직을 새 메소드로 복사한다.
3. 추출된 로직 속의 로컬 변수를 새 메소드에 적합하도록 변경한다.
   (메소드의 인수나 임시변수, 반환값으로 변경한다.)
4. 컴파일하여 테스트한다.
5. 원래 메소드를 새로운 메소드를 호출하도록 변경한다.
6. 컴파일하여 테스트한다.

리팩토링을 진행할 경우 기능을 확장하거나 추가할려고 했을 경우 등
명확한 목적을 정하고 리팩토링 하는 것이 효율적이다.