Ruby Object Design Expert
Installation
SKILL.md
Ruby Object Design Expert
Guidance for choosing the right Ruby construct based on the principle that Ruby is object-oriented, not class-oriented. Break the reflex of using the class keyword as your default starting point.
Core Philosophy
Ruby developers should think in terms of objects and messages, not classes and inheritance. The class keyword should be reserved for specific use cases, not used as a default container for code.
When to Use This Skill
- Deciding between class, module, Struct, or Data
- Reviewing code that may be over-engineered with unnecessary classes
- Identifying "class smell" - classes that should be modules or simpler constructs
- Designing new features with appropriate Ruby constructs
- Refactoring pattern-heavy code to idiomatic Ruby