单选题5.4 软件实现5 / 6
正在加载题目…
系统集成项目管理工程师 · 第三版 · 第5章 软件工程
运行几乎没变快,却让代码难读,这种优化值得做吗?
6 道章节练习题
答案与解析
正确答案 C
题设没有显示有意义的性能收益,却明确增加了理解、测试和维护成本,不值得仅为缩短代码采用重写版。先保留清晰实现,再用实际瓶颈和测量结果决定后续优化,选C。
这道题的两个条件不能漏读:当前响应已经达标,新方案的收益又没有被可靠地区分出来。此时不能用“看起来更紧凑”代替效率证据。代码少几行,并不直接等于运行更快或占用更少内存;复杂表达式还可能让边界错误更难发现。不过,若系统有明确的实时期限或资源约束,测量证明某种调整有显著收益,就需要重新权衡。教材反对的是没有重要效率改善、却损害简单性、可读性和正确性的方法,不是反对一切优化。
选项分析
- A
- 代码行数和执行时间不是直接对应关系,短表达式也可能包含更多工作或更难检查的逻辑。
- B
- 性能优化仍需考虑正确性、测试与维护成本,题干已经指出这些代价有所增加。
- C
- 同时考虑现有要求、可测收益与维护代价,没有把代码紧凑误当成效率证明。
- D
- 从一次不划算的重写推导出永远禁止优化,忽略不同系统可能有严格的性能约束。
容易混淆的地方
把代码短、技巧多当作性能高的证据,或从反对无效优化走向反对所有优化的另一个极端。
再巩固一步
- 评估优化先问:指标是什么、哪里是瓶颈、收益能否稳定复现、正确性与维护成本有没有变差。
原创章节练习题 · 第三版 · 《系统集成项目管理工程师教程》第3版 · 5.4.2 · 纸书第222页查看完整题目与详解