What problem does it solve?
This Skill assists in applying Ken Pugh's prefactoring principles to code, enhancing system design, and improving code quality.
Core Features & Use Cases
- Design System Structure: Offers guidance on creating modules, defining boundaries, and making architectural decisions.
- Create Domain Types: Helps in wrapping primitives, extracting constants, and grouping related data.
- Collections with Behavior: Provides guidance on working with arrays/lists that have domain meaning and proper method placement.
- API Contracts: Offers best practices for defining public APIs, validation, and testability.
- Error Handling: Provides strategies for robust error handling and resilient systems.
- Naming Conventions: Offers principles for clear naming and self-documenting code.
- Separation of Concerns: Assists in eliminating duplication and separating policy from implementation.
- Use Case: For a developer starting a new project, this Skill can provide a structured approach to code design, reducing future maintenance issues.
Quick Start
Start by reviewing the prefactoring principles in the SKILL.md file and apply them to your current project, focusing on improving the system architecture and code quality.