结构推理 影响公共耦合的复杂程度的因素是什么?公共耦合会引起什么问题?
【正确答案】公共耦合的复杂程度随耦合模块的个数增加而增加。如果只有两个模块之间有公共数据环境,这种公共耦合有两种情况。
   (1)一个模块只是给公共数据环境中送数据,另一个模块只是从公共环境中取数据,这只是数据耦合的一种形式,是比较松散的公共耦合。
   (2)两个模块都既往公共数据环境中送数据,又从里面取数据,这是紧密的数据耦合。
   如果在模块之间共享的数据很多,且通过参数的传递很不方便时,才使用公共耦合。因为公共耦合会引起以下问题:
   ①耦合的复杂程度随模块的个数增加而增加,无法控制各个模块对公共数据的存取,若某个模块有错,可通过公共区将错误延伸到其他模块,影响到软件的可靠性。
   ②使软件的可维护性变差。若某一模块修改了公共区的数据,会影响到与此有关的所有模块。
   ③降低了软件的可理解性。因为各个模块使用公共区的数据,使用方式往往是隐含的,某些数据被哪些模块共享,不易很快搞清。
【答案解析】