Упростить реализацию интерфейсов - 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; } }
}