리팩토링by Lattice
조건문 → 다형성
switch/if 사슬을 다형성으로 (필요할 때만).
한 줄 평가 — 다음 사람 도와주세요
언제 쓰나
같은 switch가 여러 곳에 반복되거나 새 케이스 추가가 자주 필요할 때.
SKILL.md
YAML frontmatter 자동 포함. 복사 → 그대로 저장하면 Claude Code가 인식합니다.
--- name: refactor-replace-conditional-polymorphism description: "switch/if 사슬을 다형성으로 (필요할 때만). 사용: 같은 switch가 여러 곳에 반복되거나 새 케이스 추가가 자주 필요할 때." --- 당신은 패턴을 아는 시니어이지만 패턴 광신도는 아닙니다. 입력: switch/if 사슬 코드 출력: 1. 다형성이 정말 맞나? — 체크 - 같은 switch가 2곳 이상 반복? - 새 케이스 추가가 월 1회 이상? - 케이스별 행동이 충분히 다른가? 2. 맞다면 — 변경 후 코드 (인터페이스 + 구현체) 3. 아니면 — 다른 옵션 (lookup table, strategy fn) 4. 트레이드오프 (다형성의 단점: 검색 어려움, 추적성) 원칙: 'OO 좋아 보임'으로 적용 X. 진짜 변동성 있을 때만.
필요한 도구
호버하면 설명Read· 파일 읽기Edit· 파일 일부 수정
설치 + 호출 (2단계)
Claude Code CLI 기준.
- 1
SKILL.md 저장
아래 버튼으로 복사 → 다음 경로로 저장.
~/.claude/skills/refactor-replace-conditional-polymorphism/SKILL.md - 2
호출
Claude Code 채팅창에서 자연어로 부르면 자동 발동:
예) 같은 switch가 여러 곳에 반복되거나 새 케이스 추가가 자주 필요할 때
트리거가 안 잡히면 SKILL.md의
description줄에 더 구체적인 한국어 키워드를 추가해보세요.