본문으로 건너뛰기
cccskills
무료GitHub에 공개

srp

Refactor a class toward the Single Responsibility Principle by identifying responsibilities, grouping cohesive behavior, and extracting focused classes. Use when the user says `/srp`, asks for SRP refactoring, or runs `/refactor:srp`.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(1)

  • SKILL.md2.2 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Refactor the class provided in $ARGUMENTS to adhere to the Single Responsibility Principle by extracting classes and simplifying the design.

Instructions:

  1. Identify all responsibilities within the given class
  2. Group related methods and properties by their cohesive purpose
  3. Extract each responsibility into its own focused class
  4. Consider alternative, simpler designs that make future changes easier
  5. Ensure each resulting class has only one reason to change

Analysis approach:

  • Identify responsibilities by:
    • Methods that serve different actors/users
    • Distinct areas of functionality
    • Different reasons for change
    • Unrelated data and behavior groupings
    • Infrastructure vs domain logic separation
    • I/O operations vs business logic

Common responsibility patterns to separate:

  • Data persistence/storage from business logic
  • Validation logic from core behavior
  • Formatting/presentation from domain logic
  • External service communication from internal logic
  • Configuration from implementation
  • Factory/creation logic from usage
  • Orchestration/coordination from execution
  • Logging/metrics from business operations

Output format:

  1. Current responsibilities: List each identified responsibility with supporting methods/properties
  2. Proposed class structure:
    • Name and purpose of each extracted class
    • Methods and properties it would contain
    • Clear single responsibility statement
  3. Refactored design: Show the transformed code structure
  4. Alternative designs: Present 1-2 simpler alternatives if applicable
  5. Benefits: Explain how each extraction improves:
    • Testability
    • Maintainability
    • Flexibility for change
    • Code clarity

Design principles to apply:

  • Prefer composition over inheritance
  • Keep classes small and focused
  • High cohesion within classes
  • Low coupling between classes
  • Clear, single purpose for each class
  • Consider using interfaces for flexibility

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Automates browser interactions for web testing, form filling, screenshots, and data extraction. Use when the user needs to navigate websites, interact with web pages, fill forms, take screenshots, test web applications, or extract information from web pages.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

SDiamante13/dotfiles102026년 10월 2일 업데이트

catchup

무료

Rebuilds session context after a clear by reading git history, plans, and beads state. Triggers on 'catch up'.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

SDiamante13/dotfiles102026년 10월 2일 업데이트

changelog

무료

Generate a bullet-point summary of branch changes for a PR description. Triggers on "changelog", "pr summary", "summarize branch", or "/changelog".

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

SDiamante13/dotfiles102026년 10월 2일 업데이트

commit

무료

Commit the current changes with quality checks, status review, staged diff inspection, appropriate tests, and a clear commit message. Use when the user says "commit", "c", asks to make a commit, or wants changes saved in git.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

SDiamante13/dotfiles102026년 10월 2일 업데이트

declutter

무료

Refactor code to remove dead code, useless comments, unused variables, and unused imports. Use when asked to declutter a class, clean up noisy code, remove cruft, or run `/refactor:declutter`.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

SDiamante13/dotfiles102026년 10월 2일 업데이트

dry

무료

Refactor duplicated code by extracting helpers, shared abstractions, or clearer reusable structure. Use when asked to apply DRY, remove duplication, consolidate repeated logic, or run `/refactor:dry`.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

SDiamante13/dotfiles102026년 10월 2일 업데이트

SDiamante13의 스킬 모두 보기

이 스킬의 문제 신고