提示5-6:隐藏黑盒的内部工作原理!

提示5-6:隐藏黑盒的内部工作原理!

#building-block #blackbox #lean #essential

黑盒尊重信息隐藏原则:要使用黑盒,你只需要知道它的责任及其输入和输出接口。其内部运作的其他细节(通常)不需要。

这种隐藏提供了许多优势:

  • 您可以更改或修改内部工作,而无需用户(客户、消费者)适应这些变化。
  • 您可以避免记录此构建块的白盒。这可以减少文档的维护工作。
  • 最终,您降低了一些利益相关者必须考虑或了解的细节水平。

在极端情况下,您将构建块视图限制为 level 1 (见提示5-3(“ level 1 是你的朋友”),)整个系统的白盒-而不详细说明任何顶级构建块。

有时需要信息

根据“黑盒理论”,了解这种块盒的责任和界面就足够了。但实际上,有时需要此类构建块的额外属性——例如运行时或部署属性或其他类型的品质。

让我们考虑一个简单的黑盒-平方根函数(简称“sqrt”)有一个非常简单的接口(“API”):

1
sqrt( number ) -> number

其中数字> 0。

对于sqrt-blackbox,以下几个其他属性可能很重要:

  • 我们的sqrt-blackbox提供什么精度,它将提供多少位数字。(“正确性”)
  • 是否允许所有用户使用sqrt,或者我们的sqrt仅限于特定用户(“授权”)
  • 我们的sqrt函数可以被许多并行用户调用吗(“并行,多用户能力”)
  • 使用我们的sqrt函数会花钱吗
  • 我们的功能将以多快的速度交付其结果(“性能效率”)

从示例中,您可以看到几个“质量”可能与您的黑框相关。