oo-principles
Installation
SKILL.md
OO Principles
A skill for evaluating TypeScript/JavaScript code against Dave Thomas's principles for distinguishing true object-oriented design from class-oriented anti-patterns.
Core Philosophy
Alan Kay, who coined "Object-Oriented," did not envision C++ or Java. Modern Ruby has the flexibility to move beyond class-centric design. The goal is to use classes only when they solve the problem they're designed for — creating multiple instances with their own state.
The Seven Rules (Checklist)
Rule 1: If it's not an object factory, don't use a class
The Anti-Pattern: A class with no constructor parameters, no instance variables, only static methods (especially common in checksum calculators, validators, or utilities).