我正在重构应用程序中的许多类以使用接口而不是基类。这是我到目前为止创建的界面:

  • Iarryable 由所有 Item 对象实现
  • IActable 由所有 Actor 对象实现
  • IUseable 由一些 Item 子类实现
  • IWieldable 由一些 Item 子类实现

可以看到主要的基类仍然是Item和Actor。它们具有共同的接口,因为它们都位于地图上,因此它们具有 Location 属性。Map 不应该关心该对象是 Actor 还是 Item,所以我想为它创建一个接口。界面如下所示

public interface IUnnameable {
    event EventHandler<LocationChangedEventArgs> LocationChanged;
    Location Location { get; set; }
}

这没问题,但我想不出如何称呼这个接口。我想到的 IMapable 似乎有点蹩脚。有任何想法吗?

有帮助吗?

解决方案

听起来像一个 ILocateable。您可以发现和跟踪其位置的东西。

其他提示

  • 可定位
  • 伊吉欧
  • 我在某处
  • 我在某处

编辑:

  • I名词

我只想用 哈哈猫 符号。

ICanHasLocation

或者可能

IHasLocation

或荒谬的

ImInYourProgramHavingALocation

哦,顺便说一句 - 至少有一个 鸭子打字 C# 库,这是一个非常酷的概念。

IWhereYouAtable - 增强移动性能

ITwentyable - 就像你的 20 是多少(10-20 的缩写 - CB 俚语)

说真的,虽然 ILocateable 很好。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top