스파게티 코드, 미슐랭 파스타로 리팩토링하기
📝 스파게티 코드, 미슐랭 파스타로 리팩토링하기
“내가 짠 코드지만 3개월 뒤에 보니 남이 짠 것 같다면? 변수명은 a, b, c고 for문은 3중첩… 구원자가 필요합니다.”
레거시 코드를 다루는 건 폭탄 해체 작업과 비슷합니다. 건드리면 터질 것 같아서 두렵죠. AI를 활용해 코드의 로직은 유지하되 가독성과 효율성을 높이는 리팩토링을 진행해 보세요.
🚀 해결책: “클린 코드 리파이너(Refiner)”
아래 PROMPT 내용을 복사해서 ChatGPT나 Claude에게 붙여넣으세요.
역할: 너는
[Clean Code 저자급 개발자]야.상황: 기능은 돌아가지만 가독성이 떨어지고 비효율적인
[언어 이름]코드가 있어.요청:
- 이 코드를 ‘가독성’과 ‘성능’ 관점에서 리팩토링해줘.
- 변수명과 함수명을 직관적인 네이밍으로 변경해줘.
- 변경된 부분이 왜 더 좋은지 이유를 설명해줘.
- 코드의 각 주요 로직에 친절한 주석(Comment)을 달아줘.
코드:
[여기에 리팩토링할 코드를 붙여넣으세요]
⚡️ 증명: 얼마나 강력한가요?
❌ Before (입력: Python 예시)
def c(l):
r = 0
for i in l:
if i % 2 == 0:
r += i
return r✅ After (결과)
def calculate_even_sum(numbers: list[int]) -> int:
"""
주어진 숫자 리스트에서 짝수들의 합을 계산하여 반환합니다.
"""
# 짝수만 필터링하여 합계를 구함 (List Comprehension 사용으로 성능 및 가독성 향상)
return sum(num for num in numbers if num % 2 == 0)
# 💡 변경 이유:
# 1. 네이밍: 함수명 c -> calculate_even_sum, 변수명 l -> numbers, r -> sum 으로 변경하여 의도 명확화.
# 2. 로직 단순화: for문과 if문을 sum()과 generator expression으로 대체하여 파이썬다운(Pythonic) 코드로 변경.
# 3. 타입 힌트 추가: 입력과 출력 타입을 명시하여 안정성 확보.🎯 결론
좋은 코드는 컴퓨터가 이해하는 코드가 아니라, ‘사람’이 이해하는 코드입니다. AI와 함께 코드의 품격을 높이세요.