代码之家  ›  专栏  ›  技术社区  ›  Deniz Acay

如果您使用的是基于接口的设计方法,那么如何命名更为行为化的接口?

  •  2
  • Deniz Acay  · 技术社区  · 16 年前

    我正在开发一个包含多个控件(或组件)的库。我正在使用基于接口的方法进行类型设计,但最终它导致了一个困扰了我很长时间的问题。如果您使用基于接口的设计方法,您如何命名行为接口?例如,假设您有一些getter setter函数,它们被许多接口使用,并且它们提供的功能不能用“-able”后缀命名;你会怎么做,或者你会怎么做?谢谢。。。

    编辑:例如,我创建了如下界面:

    public interface HasText {
    
        public String getText();
    
        public void setText(String text);
    
    }
    

    2 回复  |  直到 16 年前
        1
  •  1
  •   jyoungdev Thilo    16 年前

    将接口命名为正确描述实现它的任何类的单词或短语。“HasText”是一个很好的例子,因为它描述了实现者(它有一个文本属性)。

        2
  •  1
  •   Andreas Dolk    16 年前

    你确定需要不同的行为接口吗?实现一个行为接口和几个具体的行为还不够吗?

    Cat 将查询它的 Collection 属于 Behaviour 行为 他喜欢采取行动。假设我们有一个 class HuntMouse implements Behaviour 存储在列表中,这是最合适的,然后猫会打电话 action() 行为

    回到你的问题上来-我想,一个 行为 2-3种方法的接口就足够了,具体的 行为 对象不需要前缀或后缀。如果需要,我建议 -Behaviour (就像 HuntMouseBehaviour )


    最初你要求 行为 但是你的 HasText 特色 TextProvider hasText provide some text 向类添加功能。


    List of behavioural design patterns .

    (顺便说一句-我上面的例子的灵感来自机器人领域的实际实现-即使猫不是机器人;)

    推荐文章