✏️2.1 리팩터링 정의

📍 리팩터링(명사)

소프트웨어의 겉보기 동작은 그대로 유지한 채, 코드를 이해하고 수정하기 쉽도록 내부 구조를 변경하는 기법

📍 리팩터링(하다)

소프트웨어의 겉보기 동작은 그대로 유지한 채, 여러 가지 리팩터링 기법을 적용해서 소프트웨어를 재구성하다.

  • 특정한 방식에 따라 코드를 정리하는 것만이 리팩터링이다.

  • 리팩터링하는 동안에는 코드가 항상 정상 작동하기 때문에 전체 작업이 끝나지 않았더라도 언제든 멈출 수 있다.

    리팩터링하다가 코드가 깨져서 며칠이나 고생했다라고 한다면, 리팩터링한 것이 아니다.

  • 리팩터링은 성능 최적화와 비슷하게 둘 다 코드를 변경하지만 프로그램의 전반적인 기능은 그대로 유지한다.

    • 리팩터링의 목적: 코드를 이해하고 수정하기 쉽게 만드는 것 ➡️ 프로그램의 성능은 좋아질 수도, 나빠질 수도 있다.

    • 성능 최적화: 속도 개선 ➡️ 목표 성능에 도달해야 한다면 코드는 다루기에 더 어렵게 바뀔 수도 있다.

Last updated