- .gitignore에 .claude/skills/, .claude/agents/ 허용 규칙 추가 - pptx-skill SKILL.md에 Direct PptxGenJS 방식 추가 (권장 방법) - 전체 12개 에이전트, 40+ 스킬 파일 초기 커밋 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2.5 KiB
Executable File
2.5 KiB
Executable File
name, description, allowed-tools
| name | description | allowed-tools |
|---|---|---|
| code-refactoring | 코드 리팩토링 권장사항, 성능 분석, 구체적인 코드 패치를 제공합니다. 리팩토링, 코드 개선, 성능 최적화 요청 시 활성화됩니다. | Read, Write, Edit, Glob, Grep |
Code Refactoring
코드 품질 개선을 위한 리팩토링 분석 및 권장사항을 제공하는 스킬입니다.
기능
분석 영역
- 코드 스멜 탐지: 중복 코드, 긴 메서드, 거대 클래스
- 복잡도 분석: 순환 복잡도, 인지 복잡도
- 의존성 분석: 결합도, 응집도 평가
- 성능 이슈: 비효율적 알고리즘, N+1 쿼리
- 가독성: 네이밍, 구조화, 주석 품질
리팩토링 패턴
- Extract Method / Extract Class
- Replace Conditional with Polymorphism
- Introduce Parameter Object
- Replace Magic Number with Symbolic Constant
- Decompose Conditional
- Replace Nested Conditional with Guard Clauses
출력
- 문제점 상세 설명
- 리팩토링 전후 코드 비교
- 구체적인 수정 패치
- 성능 영향 분석
분석 프로세스
- 코드베이스 스캔
- 코드 스멜 및 안티패턴 탐지
- 복잡도 메트릭 계산
- 개선 우선순위 산정
- 리팩토링 제안 생성
- 전후 비교 코드 제공
리포트 구조
# 리팩토링 분석 리포트
## 요약
- 분석 파일: N개
- 발견된 코드 스멜: N개
- 권장 리팩토링: N건
## 🔴 High Impact 리팩토링
### 1. [파일명] 긴 메서드 분리
**현재 상태**
- 메서드: `processOrder()`
- 라인 수: 150줄
- 순환 복잡도: 25
**문제점**
- 단일 책임 원칙 위반
- 테스트 어려움
- 유지보수 복잡
**권장 리팩토링: Extract Method**
Before:
```java
public void processOrder(Order order) {
// 150줄의 복잡한 로직
}
After:
public void processOrder(Order order) {
validateOrder(order);
calculateTotal(order);
applyDiscounts(order);
processPayment(order);
sendConfirmation(order);
}
private void validateOrder(Order order) { ... }
private void calculateTotal(Order order) { ... }
// ...
예상 효과
- 복잡도: 25 → 5
- 테스트 용이성 향상
- 재사용성 증가
🟡 Medium Impact 리팩토링
...
성능 최적화 제안
...
## 사용 예시
이 코드를 리팩토링 해줘 src 폴더의 코드 품질을 분석하고 개선점을 알려줘 이 함수의 복잡도를 낮추는 방법을 제안해줘
## 출처
Original skill from skills.cokac.com