내 코드가 쓰레기라니! 클린 코드 리팩토링 코치

Author: Zzabbis // Date: 2026-02-04

📝 내 코드가 쓰레기라니! 클린 코드 리팩토링 코치

“나중에 고쳐야지 해놓고 1년 지났습니다. 이제 건드리기 무서워요.”

스파게티 코드(뒤엉킨 코드)는 개발자의 적입니다. 가독성이 떨어지면 버그를 찾기도 힘들고 기능을 추가하기도 어렵습니다. 이 프롬프트는 로버트 C. 마틴(클린 코드 저자)이 빙의하여, 당신의 코드를 씻기고 닦아 반짝이게 만들어줍니다.


⚡️ 3줄 요약 (TL;DR)

  1. 중복 코드 제거 및 함수 분리(Extract Method)
  2. 의미 불명확한 변수/함수명 개선 (Naming Convention)
  3. 성능 최적화 및 최신 문법(Modern Syntax) 적용

🚀 해결책: “클린 코드 세탁소”

아래 PROMPT 내용을 복사해서 사용하세요.

역할 (Role): 너는 [클린 코드 전도사이자 수석 아키텍트]야.

상황 (Context): 내 코드는 기능은 하지만, 지저분하고 읽기 어려워(Dirty Code). 유지보수가 쉽도록 리팩토링해 줘.

요청 (Task):

  1. [네이밍 센스]: 변수명과 함수명을 직관적이고 의미 있게 바꿔줘. (예: a -> userAge)
  2. [구조 개선]: 너무 긴 함수는 역할별로 쪼개고, 중복되는 로직은 하나로 합쳐줘.
  3. [Modernize]: 가능하다면 최신 언어 문법(ES6+, Python 3.10+ 등)을 적용해 줘.
  4. [Before & After]: 어디가 어떻게 바뀌었는지 비교하고, 왜 그렇게 바꿨는지 이유를 설명해 줘.

제약사항 (Constraints):

  • 코드의 동작(기능)은 절대 변하면 안 돼.
  • 주석(Comment)은 꼭 필요한 곳에만 달아줘. (코드로 설명이 되면 주석 삭제)

대상 코드:

[여기에 더러운(?) 코드를 붙여넣으세요]

🧬 프롬프트 해부 (Why it works?)

이 프롬프트는 리팩토링의 핵심 원칙인 ‘가독성’과 ‘중복 제거’에 집중합니다. [네이밍 센스] 요청은 개발자들이 가장 어려워하는 ‘이름 짓기’ 고통을 덜어줍니다. [Before & After] 비교는 좋은 코드의 패턴을 익히는 최고의 학습 자료가 됩니다.


📊 증명: Before & After

❌ Before (입력)

def calc(x, y):
    if x > 19:
        print("성인")
        p = y * 0.9
        return p
    else:
        print("학생")
        return y

(함수명 calc는 뭘 계산하는지 모르겠고, p도 의미 불명)

✅ After (프롬프트 결과)

def calculate_discounted_price(age, price):
    ADULT_AGE_THRESHOLD = 20
    DISCOUNT_RATE = 0.9

    if age >= ADULT_AGE_THRESHOLD:
        print("성인입니다.")
        return price * DISCOUNT_RATE

    print("학생입니다.")
    return price

[개선 포인트]

  1. 함수명 변경: calc -> calculate_discounted_price (할인 가격 계산임이 명확해짐)
  2. 매직 넘버 제거: 19, 0.9 같은 숫자를 상수로 선언하여 의미 부여.
  3. 불필요한 else 제거: Early Return 패턴을 사용하여 들여쓰기 깊이를 줄임.

🚨 트러블 슈팅 (안 될 땐 이렇게!)

Q. 코드가 너무 많이 바뀌어서 못 알아보겠어요. A. *“너무 급격한 변화는 싫어. 변수명 변경과 들여쓰기 정리 같은 기초적인 리팩토링만 해 줘”*라고 요청하세요.


🎯 결론

잘 짠 코드는 잘 쓴 수필처럼 술술 읽힙니다. 미래의 나(그리고 동료)를 위해 코드를 청소하세요.

이제 칼퇴하고 샤워하세요. 코드 말고 몸이요. 🍷