# 5.9 走得太远

仅当在其模块之外不需要被隐藏的信息时，信息隐藏才有意义。如果该信息在模块之外被需要，那么你就不能隐藏它。假设一个模块的性能受到某些配置参数的影响，而且模块的不同用途需要对参数进行不同的设置。在这种情况下，重要的是这些参数要在模块的接口上暴露出来，这样就可以适当地调整它们。作为一个软件设计者，你的目标应该是尽量减少模块外部所需的信息量；例如，如果一个模块可以自动调整其配置，这比暴露配置参数更好。但是，重要的是要识别出模块外部需要哪些信息并确保将其暴露出来。
