Object Oriented Design

Object-oriented design (OOD) guidance based on the six SOLID-family principles and the 23 classic GoF design patterns. Use this skill whenever the user is designing classes, modules, or object graphs; reviewing or refactoring existing object-oriented code; asking "which design pattern should I use", "is this design good", "how do I make this code more maintainable/extensible"; learning or teaching OOP concepts (SRP, OCP, LSP, ISP, DIP, Law of Demeter, factory, singleton, adapter, bridge, proxy, decorator, facade, flyweight, template method, strategy, state, command, observer, mediator, chain of responsibility, builder, prototype, abstract factory); or generating new code that should follow good OO practice. Trigger it even when the user does not explicitly say "design pattern" or "SOLID" — if they describe a problem about class responsibilities, coupling, inheritance hierarchies, object creation, state transitions, or inter-object communication, this skill applies. It works across any OO language (Java, C++,

tzf1003 ba7692d 12.7 KB Updated

File contents

tzf1003/object-oriented-design/tree/main/ commit ba7692d731

Frequently asked questions

npx skillmds@latest add tzf1003/object-oriented-design