【发布时间】:2008-10-16 04:41:16
【问题描述】:
我正在重构应用程序中的许多类以使用接口而不是基类。这是我目前创建的接口:
- ICarryable 由所有 Item 对象实现
- IActable 由所有 Actor 对象实现
- IUseable 由一些 Item 子类实现
- IWieldable 由一些 Item 子类实现
您可以看到主要的基类仍然是 Item 和 Actor。它们有一个共同的界面,因为它们都位于地图上,因此它们具有 Location 属性。 Map 不应该关心对象是 Actor 还是 Item,所以我想为它创建一个接口。这是界面的样子
public interface IUnnameable {
event EventHandler<LocationChangedEventArgs> LocationChanged;
Location Location { get; set; }
}
这没问题,但我想不出这个接口叫什么。 IMappable 似乎有点蹩脚。有什么想法吗?
【问题讨论】: