다섯 살도 알 수 있게 · SW공학

리팩토링이 뭐예요?

리팩토링을, 줄거리는 그대로 두고 문장 구조만 다시 다듬는 출판사의 재편집 작업으로 풀어봤어요.

문장이 꼬여서 어디부터 손대야 할지 모르겠어요오래된 원고일수록 손대기가 점점 더 무서워져요

오래된 원고일수록 손대기가 무서워요.문장이 꼬여서 어디부터 손대야 할지 모르겠어요.

줄거리까지 바꾸면 독자가 알아챌 거예요그렇다고 그냥 두면 다음 교정이 더 힘들어져요줄거리는 그대로 두고, 문장만 다시 다듬을 순 없을까요

줄거리를 바꾸면 독자가 알아채고, 문장을 그냥 두면 다음 교정이 더 힘들어져요.줄거리는 그대로 두고 문장만 다시 다듬을 순 없을까요?

같은 줄거리정리된 문장리팩토링 = 줄거리는 그대로 두고, 문장 구조만 다시 다듬는 재편집겉은(줄거리) 그대로, 속만(구조) 다시 다듬어요

리팩토링은 줄거리는 그대로, 문장 구조만 다시 다듬는 거예요.겉(줄거리)은 그대로, 속(문장 구조)만 다시 다듬어요.

중복 문장 합치기같은 말을 한 곳으로
긴 문단 쪼개기짧고 읽기 쉽게
이름 통일하기용어를 하나로 맞춰요
조금씩, 매번 확인줄거리가 안 바뀌었나 봐요
재편집 체크리스트중복 문장 합치기긴 문단 쪼개기이름(용어) 통일하기한 번에 조금씩 + 매번 줄거리 확인줄거리가 안 바뀌었는지는 교정자가 매번 확인해요

리팩토링은 합치기·쪼개기·이름 통일 같은 작은 수정과 확인을 반복해요.줄거리가 안 바뀌었는지는 교정자가 매번 확인해요.

교정(테스트) 없인 줄거리가 안 바뀐 건지 확신 못해요새 챕터를 추가하는 건 리팩토링이 아니에요리팩토링은 기능 추가가 아니라, 구조만 다시 다듬는 거예요

교정(테스트) 없이는 줄거리가 그대로인지 확신할 수 없어요.리팩토링은 기능 추가가 아니라 구조만 다시 다듬는 거예요.

한 줄로

리팩토링은 책의 줄거리(겉으로 보이는 동작)는 그대로 두고, 문장 구조(속 설계)만 다시 다듬는 재편집이에요.

리팩토링은 소프트웨어의 외부 동작(기능, 출력 결과)을 바꾸지 않으면서 내부 코드 구조를 개선하는 작업이에요. 중복 제거, 함수/모듈 분리, 네이밍 통일 등을 작은 단계로 나눠 수행하고, 매 단계마다 테스트로 동작이 그대로인지 확인해요. 새 기능을 추가하는 것과는 분명히 구분돼요.

어른들은 이렇게 불러요

리팩토링
Refactoring
줄거리는 그대로, 문장만 다시 다듬기. 외부 동작은 안 바뀌어요.
외부 동작
External Behavior
독자가 읽는 줄거리. 리팩토링 전후로 똑같아야 해요.
코드 스멜
Code Smell
문장이 꼬여 보이는 낌새. 리팩토링이 필요하다는 신호예요.
단위테스트
Unit Test
줄거리가 안 바뀌었는지 보는 교정. 리팩토링의 안전망이에요.
기술부채
Technical Debt
나중에 갚아야 할 빚. 리팩토링은 이 빚을 갚는 방법 중 하나예요. → 지금 빨리 가려고 쌓아둔 빚
캡슐화
Encapsulation
서랍 속을 잠그고 창구로만 드나들게 하기. 창구 모양은 그대로, 서랍 속만 리팩토링해요. → 작가의 잠긴 서랍
디자인패턴
Design Pattern
편집 스타일가이드. 리팩토링의 목적지 중 하나예요.
회귀
Regression
고치다 줄거리가 틀어지는 사고. 리팩토링이 가장 조심하는 사고예요.
다음 이야기
전국 창고 네트워크 →
다른 용어도 그림책으로 보고 싶다면 요청하기 →