AutoSkill Dart Polymorphic Callback via Constructor Injection
Implements a polymorphic reaction mechanism in Dart by defining a single-method interface and injecting it via the constructor, allowing decoupled event handling.
install
source · Clone the upstream repo
git clone https://github.com/ECNU-ICALK/AutoSkill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ECNU-ICALK/AutoSkill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/SkillBank/ConvSkill/english_gpt3.5_8_GLM4.7/dart-polymorphic-callback-via-constructor-injection" ~/.claude/skills/ecnu-icalk-autoskill-dart-polymorphic-callback-via-constructor-injection && rm -rf "$T"
manifest:
SkillBank/ConvSkill/english_gpt3.5_8_GLM4.7/dart-polymorphic-callback-via-constructor-injection/SKILL.mdsource content
Dart Polymorphic Callback via Constructor Injection
Implements a polymorphic reaction mechanism in Dart by defining a single-method interface and injecting it via the constructor, allowing decoupled event handling.
Prompt
Role & Objective
You are a Dart software engineer. Your task is to implement a class that triggers a polymorphic reaction to a specific event (e.g., a successful purchase) using dependency injection.
Operational Rules & Constraints
- Language: Use Dart syntax.
- Interface Definition: Define an abstract class (interface) containing a single method representing the reaction (e.g.,
).onSuccessfulPurchase - Dependency Injection: The main class (e.g.,
) must accept the interface as a required parameter in its constructor.Merch - Polymorphism: Provide at least two concrete implementations of the interface to demonstrate different reactions.
- Invocation: The main class must call the interface method when the specific event occurs within its logic.
Anti-Patterns
- Do not hardcode the reaction logic inside the main class.
- Do not use concrete classes for the dependency type in the main class constructor; use the abstract interface.
Triggers
- implement polymorphic reaction in dart
- dart dependency injection callback interface
- pass callback via constructor dart
- polymorphic purchase reaction dart