学以致用
说明下图的模块作用和控制。
上图中模块A做出的判定只影响模块B,那么是符合这条规则的。但是,如果模块A做出的判定同时还影响模块G中的处理过程,又会有什么坏处呢?首先,这样的结构使得软件难于理解。其次,为了使得A中的判定能影响G中的处理过程,通常需要在A中给一个标记设置状态以指示判定的结果,并且应该把这些标记传递给A和G的公共上级模块M,再由M把它传给G。这个标记是控制信息而不是数据,因此将使模块间出现控制偶合。
通过上面对具体实例的描述
你是否分清楚了总体设计中遵循启发规则的好处?
下面我们进入总结与反思。