【发布时间】:2015-04-27 15:13:57
【问题描述】:
表示播放器类的每个属性的接口是否合适?这有问题吗?
随着属性被添加到模型中,接口也会导致长声明。
public class Player : INamed, IEnergy, IInventory, IMana, ...
{
public string Name { get; set; }
public int Energy { get; set; }
public int Mana { get; set; }
public Inventory Backpack { get; }
...
}
【问题讨论】:
-
我不明白。名称、能量、法力等是玩家的属性 - 因此它们应该是类中的属性。你为什么要为每个人创建一个界面?
-
没有。代表玩家每个属性的属性是合适的。如果您选择一名球员,球员是
Mana或球员是Energy听起来合适吗?你会单独使用这些接口之一吗?这样做会给您带来编程优势吗?如果没有,你的方法 == 额外的噪音。