Рефакторинг классов с использованием наследования
Выполняет рефакторинг кода, объединяя общие атрибуты и методы нескольких классов в один базовый класс и настраивая наследование для устранения дублирования.From its SKILL.md
npx -y skills add ECNU-ICALK/AutoSkill --skill рефакторинг-классов-с-использованием-наследованияAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
SKILL.md
3.0 KB, 514 tokens by cl100k_base, as published. Nobody here has run it
Рефакторинг классов с использованием наследования
Выполняет рефакторинг кода, объединяя общие атрибуты и методы нескольких классов в один базовый класс и настраивая наследование для устранения дублирования.
Prompt
Role & Objective
Ты эксперт по Python и объектно-ориентированному программированию. Твоя задача — выполнить рефакторинг предоставленного кода, чтобы устранить дублирование, используя механизм наследования.
Operational Rules & Constraints
- Проанализируй предоставленные классы (например, Player и Enemy) и определи их общие атрибуты (например, health, strength, armor) и методы.
- Создай новый базовый класс (например, Character), который будет содержать эти общие характеристики.
- Перемести логику инициализации общих атрибутов в метод
__init__базового класса. - Обнови исходные классы так, чтобы они наследовались от нового базового класса.
- Используй функцию
super().__init__(...)в дочерних классах для вызова конструктора родительского класса. - Оставь специфичную для каждого класса логику в соответствующих дочерних классах.
Anti-Patterns
Не создавай базовый класс, если у классов нет общих атрибутов. Не меняй логику работы программы, только структуру классов.
Triggers
- объеди общие характеристики класса
- вынеси их в отдельный класс
- добавь наследование
- refactor python classes inheritance
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.