♻️ 0장 리팩토링이란

Siri·2022년 8월 13일
0
post-thumbnail

✅ 리팩토링 정의

♻️리팩토링(refactoring)이란 외부에서 보는 프로그램 동작은 바꾸지 않고 프로그램의 내부 구조를 개선하는 것

  • 리팩토링해도 외부에서 보는 프로그램 동작은 변하지 않는다.
  • 리팩토링하면 프로그램의 내부 구조가 개선된다.

💡 리팩토링 퀴즈

1. 버그 수정은 리팩토링? (X)

2. 기능 추가는 리팩토링? (X)

3. 소스 코드 정리는 리팩토링? (△)

소스코드를 정리하다가 프로그램 동작에 변화가 생기면 리팩토링이 아니다.
리팩토링은 단순히 소스 코드를 정리하는 것이 아니다.
반드시 '외부에서 보는 프로그램 동작에 변화가 없음'을 확인해야 한다.

🌈 리팩토링과 유닛테스트

  • 리팩토링 전에 테스트합니다.
  • 리팩토링 합니다.
  • 리팩토링 후에 다시 테스트 합니다.

자바에서는 JUnit을 많이 사용한다.

🌈 리팩토링의 목적

1. 버그를 발견하기 쉽게 만든다

2. 기능을 추가하기 쉽게 만든다

3. 리뷰하기 쉽게 만든다

🌈 리팩토링의 한계

리팩토링이 불가능할 때도 있다.

1.프로그램이 아직 동작하지 않을 때

2. 시간이 너무 촉박할 때

시간이 촉박할 때 리팩토링을 하는 것은 현명하지 않다.
납품 직전에 대규모로 리팩토링 하는 것도 피해야 한다.

출처

자바로 배우는 리팩토링 입문 - 길벗

0개의 댓글