今天我阅读了《代码大全2》这本书里面的代码改善的部分,学习了如何有效地改善代码.
软件同时拥有外在的和内在的质量特性。
外在体现为:
- 正确性
- 可用性
- 效率
- 可靠性
- 完整性
- 适应性
- 精确性
- 健壮性
程序员除了关注外在特性外,更关注内在的质量特性
- 可维护性
- 灵活性
- 可移植性
- 可重用性
- 可读性
- 可测试性
- 可理解性
以上就是一个软件应该具备的特性,我们想要改善代码,就应该从这几个方面出发。
我们学习改善软件质量的技术,我们需要关心软件开发的过程,明确一个设置目标,找出缺陷并修正缺陷。
协同构建
协同构建是其他质量保证技术的补充
协同构建有利于传授公司文化及编程专业知识
集体所有权适用于所有形式的协同构建
结对编程
结对编程:遵循几个准则:
-
统一编码规范
-
不要让结对编程变成旁观
-
不要强迫在简单的问题上使用结对编程
-
有规律地对结对人员和分配的工作任务进行轮换
-
鼓励双方跟上对方的步伐
-
避免新手组合
-
指定一个组长
正式检查
正式检查:参与详查流程的角色包括主持人(保证详查以特定的速度进行,保证效率也能发现错误),作者,评论员。流程:计划(作者提交设计代码给主持人),概述(评论员不熟悉项目,需要作者进行概述),准备(对设计代码进行详查),会议(主持人挑人员除作者外阐述设计代码的业务逻辑),报告(主持人准备缺陷报告),返工,跟进;
开发者测试
单元(Unit);组件(Component);集成(Integration);回归(Regression);系统(System)
重构
重构策略:
-
在增加子程序、类时进行重构
-
在修补缺陷时进行重构
-
关注容易出错的模块
-
关注高度复杂的模块
-
如果在维护一个系统,改善你手中正在处理的代码。确保代码在离开你的时候比来之前更健康。
-
定义清楚干净代码和拙劣代码之间的边界,然后尝试把代码移过这条边界。