본문 바로가기

Develop/소프트웨어 설계

[리팩토링] 제2장 리팩토링 개론 리팩토링 제2장 리팩토링 개론 이 장에서는 이론적인 설명으로 돌아가서 리팩토링의 주요 원리와 리팩토링할 때 고려해야 할 사안에 대해 설명하겠다. 리팩토링은 무엇인가 리팩토링이란 겉으로 드러나는 기능은 그대로 둔 채, 알아보기 쉽고 수정하기 간편하게 소프트웨어 내부를 수정하는 작업 또는 리팩토링 기법을 연달아 적용해서 겉으로 드러나는 기능은 그대로 둔 채 소프트웨어 구조를 변경하는 작업 리팩토링은 단순한 코드 정리가 아니다. 리팩토링 과정을 통해 코드 효울성도 높일 수 있고 코드 구조도 체계화할 수 있다. 상황에 따라 어느 리팩토링 기법을 적용하는 것이 적절한지 파악할 줄 알아야 한다. 또한 리팩토링으로 인한 버그를 최소화하는 방식을 따르는 것이 중요하다. 리팩토링의 정의로부터 강조할 사항은 다음 두가지다..
[리팩토링] 제1장 맛보기 예제 리팩토링 제 1장 맛보기 예제 설계가 조잡한 시스템은 어디를 수정해야 하는지 찾기 힘들어 수정도 어렵다. 수정할 위치를 찾기 힘들면 개발자가 실수할 가능성이 높아져서 버그가 생긴다. 코드를 복사해서 붙이게 되면 나중에 그 코드를 수정할 때마다 계속 같은 부분을 복사해서 붙여야 하기 때문에 아주 번거롭고 에러가 생길 수도 있다. 사용 기간이 길고 추후 수정해야 할 가능성이 있는 프로그램은 복사해서 붙이는 과정에서 큰 문제가 생길 수 있다. 그래서 매번 코드를 복사해서 붙일 필요가 없게 프로그램을 개선해야 한다. 프로그램이 당장은 문제가 없을지 몰라도 나중엔 사용자가 요구한 기능을 수정하기 힘들어서 애먹을 것이다. 이 상황이 리팩토링해야 할 시점이다. 프로그램에 기능을 추가해야 하는데 코드 구조가 조잡해서 ..