计算机 选择题 较难 ★ 精品

代码重构与坏味道识别 — 计算机选择题

软件工程(大学通用) 软件构造与实现 AI 三重审校通过

题目
某订单模块中,calculateInvoice 负责读取订单、校验优惠券、计算折扣、生成发票并发送邮件;多个不同订单渠道都需要相同的优惠券校验逻辑。现要求在保持外部行为不变的前提下,优先消除职责混杂与重复代码,最合适的重构方案是? A. 将全部逻辑复制到各渠道方法,并统一方法命名 B. 把优惠券校验提取为共享方法,并将发票生成和邮件发送职责分别提取 C. 只为 calculateInvoice 增加注释,说明各段逻辑的用途 D. 删除优惠券校验,以减少方法中的处理步骤