5.10 小结
信息隐藏和深模块是密切相关的。如果一个模块隐藏了大量的信息,这往往会增加模块所提供的功能,同时也会减少其接口。这使模块变得更深。相反,如果一个模块没有隐藏很多信息,那么它要么没有很多功能,要么有一个复杂的接口;无论哪种情况,这个模块都是浅的。
当把一个系统分解成模块时,尽量不要受运行时操作顺序的影响;那会把你引向时序分解的道路,从而导致信息泄漏和浅模块。相反,考虑一下执行应用程序任务所需的不同知识,并设计每个模块来封装这些知识中的一条或几条。这将产生具有深模块的简洁设计。
Last updated