카테고리 없음
Code Refactoring (코드 리팩토링)이란?
미로그
2024. 7. 30. 23:06
리팩토링(Refactoring)이란 ?
소프트웨어 공학에서 '결과의 변경없이 코드의 구조를 재조정함'을 뜻한다.
- 주로 가독성을 높히고 유지보수를 편하게 한다.
- 버그를 없애거나 새로운 기능을 추가하는 행위는 아니다.
- 사용자가 보는 외부 화면은 그대로 두면서 내부 논리나 구조를 개선하는 유지보수 행위이다.
리팩토링(Refactoring)의 목적 및 사용이유 ?
- 소프트웨어를 더 이해하기 쉽고 수정하기 쉽게 만드는 것
- 성능을 최적화 시키는것이 아니라 코드를 신속하게 개발할 수 있게 만들어주고, 코드 품질을 좋게 만들어준다.
- 중복된 코드의 제거
- 코드가 이해하기 쉽고 수정하기 쉬움으로 개발속도 증가
리팩토링(Refactoring)의 사용시기
삼진규칙 (3번의 중복 / 3번의 같은 행위를 한다면 리팩토링을 진행하자.)
- 기능을 추가할 때 리팩토링을 하자.
- 버그를 수정해야 할 때 리팩토링을 하자.
- 코드 검토(Code Review)를 할 때 리팩토링을 하자.
리팩토링(Refactoring)의 수행 절차
- 리팩토링할 대상을 선정한다.
- 선정된 대상의 테스트 코드를 작성한다.
- 코드를 분해한 후 재조립 한다.
- 재조립한 코드를 테스트한다.
- 3~4번 작업을 만족할 때 까지 반복한다.
클린코드(CleanCode VS) 코드리팩토링(Refactoring)
- 리팩토링이 더 넓은 의미를 가진다.
- 클린코드 > 단순히 가독성을 높히기 위한 작업이다.
- 리팩토링 > 클린코드를 포함, 유지보수를 위한 코드 개선이 이루어진다.
- 클린코드 > 설계부터 잘 이루어져 있는것이 중요하다.
- 리팩토링 > 결과물이 나온 이후 수정이나 추가 작업이 진행될 때 개선해 나가는것이 올바른 방향이다.
Reference
https://haloworld.tistory.com/25