oo-design-principle-evaluator
Installation
SKILL.md
OO Design Principle Evaluator
When to Use
Use this skill when you are:
- Reviewing a class hierarchy — assessing whether inheritance is being used correctly or overused
- Deciding between inheritance and composition — need a principled recommendation for a specific design choice
- Diagnosing brittleness — a subclass is breaking when parent classes change, indicating broken encapsulation
- Designing for flexibility — want behavior that can change at runtime, which inheritance cannot provide
- Code reviewing OO designs — evaluating whether a design follows established reuse best practices
Preconditions: you have at least one of:
- Source code with class definitions and inheritance relationships
- A verbal or written description of the class hierarchy and how classes relate
- A UML diagram or design document describing the object model
Agent: Before starting, confirm whether you have access to source code or only a description. Code access enables deeper analysis (scanning for concrete class instantiation, checking method override patterns). A description enables principle-level analysis.