3.2.7 信息隐蔽

  如何分解一个软件才能得到最佳的模块组合?为了明确怎样去做,需要了解什么是"信息隐蔽"。由parnas提倡的信息隐蔽是指,每个模块的实现细节对于其它模块来说是隐蔽的。就是说,模块中所包含的信息(包括数据和过程)不允许其它不需要这些信息的模块使用。

  通常有效的模块化可以通过定义一组独立的模块来实现,这些模块相互间的通信仅使用对于实现软件功能来说是必要的信息。通过抽象,帮助我们确定组成软件的过程(或信息)实体,通过信息隐蔽,则可定义和实施对模块的过程细节和局部数据结构的存取限制。