What problem does it solve?
This skill bridges the gap between classic object-oriented design patterns and modern Kotlin development, preventing over-engineering by favoring language-native idioms over complex class hierarchies.
Core Features & Use Cases
- Pattern Mapping: Identifies how classic GoF patterns (Strategy, Factory, Decorator, etc.) dissolve into Kotlin features like sealed classes, higher-order functions, and interface delegation.
- Architectural Guidance: Provides a decision framework for structuring object collaborations while maintaining immutability and pure domain logic.
- Use Case: Use this skill when reviewing a Pull Request to determine if a proposed class-based pattern can be simplified into a more idiomatic Kotlin construct, or when documenting architectural decisions in an ADR.
Quick Start
Use the design-patterns skill to evaluate if the current implementation of the SimulationEngine follows the Strategy pattern or if it can be refactored into a more idiomatic Kotlin approach.