代码之家  ›  专栏  ›  技术社区  ›  John K

确定一个接口应该有多细粒度?

  •  4
  • John K  · 技术社区  · 15 年前

    我在接口中放入的细节越多,它的可重用性就越低。另一方面,细节越少,看起来就越虚无缥缈和无用。有没有一套标准的建议来衡量不同情况下的情况?

    3 回复  |  直到 15 年前
        1
  •  0
  •   CesarGon    15 年前

    我刚刚共同撰写了一篇关于组件粒度(大小)的论文,我们的一个结论是,没有简单的方法来确定“什么是正确的”。所以没有,没有一套标准的建议。

    我可以给你一些关于这个问题的学术参考,以防你感兴趣:

    • gloo,m.,piattini,m.,calero,c.(eds.):软件概念模型的度量。 英国伦敦帝国学院出版社(2005)
    • 谢霍夫佐夫:《论质量的概念化》。在达格斯图尔发表的论文 概念建模研讨会,2008年4月27日至30日(会议网站预印本)(2008年)
        2
  •  2
  •   Kane    15 年前

    我是一个坚定原则的忠实粉丝。固体中的“i”让我相信,客户不应该被迫实现他们不需要或使用的接口。换句话说,如果您有一个抽象类或接口,那么不应该强迫实现者实现他们不关心的部分。

    雷休斯顿写了一篇关于它的好文章(看看会员服务提供商) here .

        3
  •  0
  •   dar7yl    15 年前

    把人类基因组看作一类。

    每个实例(细胞对象)都具有基因组的所有功能。 (尽管并非所有的细胞对象都可以访问所有的功能;也许干细胞除外)。

    我之所以提出这一点,是因为我看到许多单个类的实例试图执行许多函数,而不是有多个类,每个类都执行一个函数。

    这相当于一粒沙子,里面有建造城堡的指令。进化有几十亿年的时间来解决这些虫子。工程师只是没有能力或时间去做这件事。