Упростить реализацию интерфейсов - C#

Узнай цену своей работы

Формулировка задачи:

Здравствуйте, есть множество интерфейсов, а так же большое количество классов, каждый из которых должен реализовывать различную комбинацию интерфейсов. Скажем ClassX реализует IA, IB, ID, а ClassY реализует IC, ID. Проблема в том, что писать реализацию методов интерфейсов в каждом классе очень долго и утомительно.
public class Box : IStorrage, ITransform
{
    private Storrage _storrage = new Storrage();
    private Position _position = new Position();
 
    public void OpenStorrage()
    {
        _storrage.Open();
    }
 
    public void PutInStorrage(Item item)
    {
        _storrage.PutIN(item);
    }
 
    public void Move(int x, int y)
    {
        _position.Move(x, y);
    }
}
public class Ball : ITransform
{
 
    private Position _position = new Position();
 
    public void Move(int x, int y)
    {
        _position.Move(x, y);
    }
}
Есть ли способ не писать одно и тоже десятки раз?

Решение задачи: «Упростить реализацию интерфейсов»

textual
Листинг программы
public interface ITransform
{
    Transform Transform { get; set; }
}
 
public class Transform
{
    public Vector Position = new Vector();
    public void Move(int x, int y)
    {
        Position.Add(x, y);
    }
}
public class Ball : ITransform
{
 
    private Transform _transform = new Transform();
    public Transform Transform { get { return _transform; } set { _transform = value; } }
 
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.833 из 5