Software Design Principles Claude Code Skill | SOLID & DRY