В компьютерной игре, персонаж игрока взаимодействует с различными объектами на карте. Есть всего три способа взаимодействовать:
А вот различных видов объектов на карте уже 5, а будет ещё больше. Скачайте проект Inheritance.MapObjects, откройте файл Task.cs и изучите, как это реализовано сейчас.
Проблема в том, что метод Interaction.Make содержит много почти повторяющегося кода, нарушая принцип Dont Repeat Yourself. Кроме того, он будет расти с появлением новых объектов в игре.
Выделите все поля, необходимую для каждого взаимодействия, в свой интерфейс. Отрефакторьте программу, избавившись от повторяющихся участков кода в Interaction.Make.
В итоговом решении Interaction.Make должен работать только с интерфейсами, и не должен содержать упоминаний конкретных классов.
Гарантия на работу | 1 год |
Средний балл | 4.96 |
Стоимость | Назначаете сами |
Эксперт | Выбираете сами |
Уникальность работы | от 70% |