리팩토링(Refactoring)

SW설계리팩토링
읽는데 2분 소요
처음 쓰여진 날: 2026-04-29
마지막 수정일: 2026-04-29
조회수:

요약

정처기 실기에서 출제되는 리팩토링(Refactoring)의 정의, 목적, 대표 기법(이름 변경·메서드 추출 등)과 코드 스멜을 정리합니다.

리팩토링이란? 쌩기초

**리팩토링(Refactoring)**은 소프트웨어의 외부 동작은 변경하지 않으면서 내부 구조를 개선하여 가독성·유지보수성·확장성을 높이는 작업입니다.

  • 결과(외부 동작)는 그대로
  • 내부 코드 구조만 다듬음
  • 동작이 바뀌면 그건 리팩토링이 아닌 기능 변경

리팩토링 목적 기초

목적설명
가독성 향상다른 사람이(또는 미래의 내가) 코드를 더 빨리 이해
유지보수성 향상변경·확장이 쉬워짐
버그 발견구조를 정리하다 숨은 버그를 발견
설계 개선시간이 흘러 어색해진 설계를 다듬음

대표 리팩토링 기법 기초

기법의미
이름 변경(Rename)변수·함수·클래스 이름을 의도가 드러나게 변경
메서드 추출(Extract Method)긴 함수에서 일부 로직을 별도 함수로 분리
메서드 인라인(Inline Method)짧고 단순한 함수를 호출부에 펼침
클래스 추출(Extract Class)너무 많은 책임을 가진 클래스를 분리
매직 넘버 제거의미 없는 숫자 리터럴을 상수로 추출

코드 스멜 심화

리팩토링이 필요한 신호를 코드 스멜(Code Smell) 이라고 합니다. 대표적인 예시는 다음과 같습니다.

  • 중복된 코드(Duplicated Code)
  • 너무 긴 함수(Long Method)
  • 큰 클래스(Large Class)
  • 너무 많은 매개변수(Long Parameter List)
  • 의미 없는 이름(Mysterious Name)

정처기 기출 문제 기초

관련 글

(41개)
제목태그시험
UI 정보처리기사 실기 모의 시험
UI/UX
응시
애자일(Agile) 방법론
애자일
-
코딩 컨벤션과 표기법
코딩 스타일
-
리팩토링(Refactoring) | 정처기 감자