Приветствую всех, если у вас проблема с решением этой задачи пишите, оно у меня есть!
В компьютерной игре, персонаж игрока взаимодействует с различными объектами на карте. Есть всего три способа взаимодействовать:
- Сражаться с армией.
- Собирать сокровища.
- Присваивать объект себе.
А вот различных видов объектов на карте уже 5, а будет ещё больше. Скачайте проект Inheritance.MapObjects, откройте файл Task.cs и изучите, как это реализовано сейчас.
Проблема в том, что метод Interaction.Make содержит много почти повторяющегося кода, нарушая принцип Dont Repeat Yourself. Кроме того, он будет расти с появлением новых объектов в игре.
Выделите все поля, необходимую для каждого взаимодействия, в свой интерфейс. Отрефакторьте программу, избавившись от повторяющихся участков кода в Interaction.Make.
В итоговом решении Interaction.Make должен работать только с интерфейсами, и не должен содержать упоминаний конкретных классов.
1 2 3 4 5 |
using System; namespace Inheritance.MapObjects { } |
Стоимость решения этой задачи всего 100 рублей, закажи решения у меня 🙂