스킬 tdd-workflows-tdd-refactor
🔧

tdd-workflows-tdd-refactor

안전 ⚙️ 외부 명령어

TDD 로 안전하게 코드 리팩토링하기

기존 기능을 손상시키지 않으면서 코드 품질을 유지하며 리팩토링합니다. 이 스킬은 안전한 코드 변환을 유도하는 포괄적인 TDD 워크플로우를 제공합니다.

지원: Claude Codex Code(CC)
🥉 72 브론즈
1

스킬 ZIP 다운로드

2

Claude에서 업로드

설정 → 기능 → 스킬 → 스킬 업로드로 이동

3

토글을 켜고 사용 시작

테스트해 보기

"tdd-workflows-tdd-refactor" 사용 중입니다. 테스트를 정상 상태로 유지하면서 이 OrderProcessor 클래스를 리팩토링하세요

예상 결과:

Extract Method, Value Objects, Dependency Injection 패턴을 적용했습니다. 모든 테스트가 통과합니다. 별도 검증 서비스를 생성하고, OrderTotal 값 객체를 도입했으며, 의존성을 주입했습니다. 코드 커버리지는 95% 로 유지되었습니다.

"tdd-workflows-tdd-refactor" 사용 중입니다. 이 200 줄 함수의 코드 스멜을 제거하세요

예상 결과:

Extract Method 패턴을 사용하여 8 개의 집중된 메서드로 분해했습니다. 단일 책임 원칙을 적용했습니다. 복잡한 메서드 시그니처에 Parameter Objects 를 도입했습니다. 모든 42 개 테스트가 여전히 통과합니다. 순환 복잡도가 45 에서 8 로 감소했습니다.

보안 감사

안전
v1 • 2/25/2026

Static analysis detected 9 potential issues (external commands, weak crypto, reconnaissance patterns). All findings are FALSE POSITIVES - they occur in code documentation examples and markdown backticks, not executable code. No prompt injection attempts or malicious intent detected. This is a legitimate TDD refactoring skill.

1
스캔된 파일
190
분석된 줄 수
2
발견 사항
1
총 감사 수
낮은 위험 문제 (1)
External Commands in Documentation
Ruby/shell backtick patterns detected at lines 23, 139, 159, 162. These are FALSE POSITIVES - the backticks contain code examples in TypeScript/JavaScript within markdown code blocks, not executable Ruby shell commands. The skill file is documentation-only with no executable code.
감사자: claude

품질 점수

38
아키텍처
95
유지보수성
87
콘텐츠
32
커뮤니티
100
보안
100
사양 준수

만들 수 있는 것

레거시 코드 현대화

기능을 유지하면서 점진적으로 레거시 코드베이스를 리팩토링합니다

코드 품질 개선

코드 스멜을 제거하고 디자인 패턴을 체계적으로 적용합니다

테스트 지원 아키텍처 진화

포괄적인 테스트 커버리지를 사용하여 아키텍처 패턴을 안전하게 진화시킵니다

이 프롬프트를 사용해 보세요

기본 리팩토링 요청
모든 테스트를 정상 상태로 유지하면서 이 코드를 리팩토링하세요. 코드 스멜을 제거하고 가독성을 개선하는 데 중점을 두세요.
패턴 적용
이 코드에 Extract Method 패턴을 적용하세요. 모든 테스트를 정상 상태로 유지하면서 긴 메서드를 더 작고 집중된 함수로 분할하세요.
포괄적 리팩토링
TDD 리팩토링 단계를 사용하여 이 코드를 리팩토링하세요: 녹색 베이스라인 확립, 코드 스멜 감지, 적절한 디자인 패턴 적용, 전체 테스트 제품군으로 검증, 전후 메트릭 제공.
아키텍처 진화
Strangler Fig 패턴을 사용하여 아키텍처를 개선하도록 이 코드를 리팩토링하세요. 테스트 안전성을 유지하면서 레거시 구성 요소를 점진적으로 교체하고 점진적 마이그레이션 계획을 제공하세요.

모범 사례

  • 리팩토링 전에 항상 테스트를 실행하여 녹색 베이스라인을 확립하세요
  • 작고 점진적인 변경을 수행하고 각 수정 후 테스트를 실행하세요
  • 쉬운 롤백을 위해 각 성공적인 리팩토링 후 커밋하세요
  • 리팩토링 변경과 동작 변경을 완전히 분리하세요

피하기

  • 테스트 커버리지 없이 리팩토링 - 감지되지 않는 회귀를 초래합니다
  • 중간 테스트 실행 없이 대규모 변경 - 기능 손상 위험이 높습니다
  • 리팩토링과 기능 추가를 혼합 - 단일 책임 원칙을 위반합니다
  • 롤백 계획 생략 - 테스트 실패 시 복구를 어렵게 만듭니다

자주 묻는 질문

이 스킬을 사용하려면 기존 테스트가 필요한가요?
네, 이 스킬은 안전하게 리팩토링하기 위해 기존 테스트 커버리지가 필요합니다. 테스트 없으면 리팩토링은 기존 기능을 손상시킬 위험이 있습니다. 레거시 코드의 경우 먼저 특성화 테스트 (characterization tests) 작성을 고려하세요.
리팩토링 변경은 어느 정도 크기여야 하나요?
변경을 작고 점진적으로 유지하세요. 각 수정 후 테스트를 실행하세요. 일반적인 리팩토링 단계는 5-20 줄의 코드를 변경해야 하며 테스트 제품군으로 즉시 검증 가능해야 합니다.
이 스킬이 내 코드를 위한 테스트를 작성할 수 있나요?
아니요, 이 스킬은 테스트 커버리지를 유지하면서 기존 코드를 리팩토링하는 데 중점을 둡니다. 새 테스트를 작성하지 않습니다. 테스트 생성을 위해서는 전용 TDD 테스트 작성 스킬 사용을 고려하세요.
리팩토링 중 테스트가 실패하면 어떻게 하나요?
즉시 마지막 변경을 되돌리고, 무엇이 깨졌는지 확인한 후 더 작은 점진적인 변경을 적용하세요. 안전한 실험을 위해 버전 컨트롤을 사용하세요. 이 스킬에는 실패 처리를 위한 복구 프로토콜이 포함되어 있습니다.
이 스킬이 모든 프로그래밍 언어와 함께 작동하나요?
리팩토링 원칙은 광범위하게 적용되지만, 코드 예시와 패턴은 주로 TypeScript 로 시연됩니다. 개념은 Java, C#, Python 및 기타 객체 지향 언어로 변환 가능합니다.
어떤 디자인 패턴을 적용해야 할지 어떻게 알 수 있나요?
이 스킬은 감지된 코드 스멜을 기반으로 패턴 선택에 대한 안내를 제공합니다. 구체적인 문제부터 시작하세요: 중복 코드는 추출이 필요하고, 복잡한 조건은 다형성이 필요하며, 긴밀한 결합은 의존성 주입이 필요합니다.

개발자 세부 정보

파일 구조

📄 SKILL.md