软件设计过程中,可以用耦合和内聚两个定性标准来衡量模块的独立程度,耦合衡量不同模块彼此间互相依赖的紧密程度,应采用以下设…
单选题
软件设计过程中,可以用耦合和内聚两个定性标准来衡量模块的独立程度,耦合衡量不同模块彼此间互相依赖的紧密程度,应采用以下设计原则(31)
A. 尽量使用内容耦合、少用控制耦合和特征耦合、限制公共环境耦合的范围、完全不用数据耦合
B. 尽量使用数据耦合、少用控制耦合和特征耦合、限制公共环境耦合的范围、完全不用内容耦合
C. 尽量使用控制耦合、少用数据耦合和特征耦合、限制公共环境耦合的范围、完全不用内容耦合
D. 尽量使用特征耦合、少用数据耦合和控制耦合、限制公共环境耦合的范围、完全不用内容耦合
答案:B
解析
正确答案:B
模块设计应追求“高内聚、低耦合”。耦合从低到高大致为:数据耦合、特征耦合、控制耦合、公共耦合、内容耦合。数据耦合最理想,内容耦合最差且应完全避免,因此 B 正确。
- A 错:内容耦合最差却“尽量使用”,还“完全不用”数据耦合,方向颠倒。
- C 错:控制耦合会增加控制依赖,应少用,而非尽量使用。
- D 错:特征耦合传递整体数据结构,依赖较强,应少用,而非尽量使用。
- B 对:多用数据耦合,少用控制/特征耦合,限制公共耦合,杜绝内容耦合。
面试延伸:高内聚低耦合是模块独立性核心。Java 中可用接口、依赖注入、最小可见性、避免全局可变状态降低耦合;用职责单一、封装提高内聚。