代码审查流程与要点.pptx
《代码审查流程与要点.pptx》由会员分享,可在线阅读,更多相关《代码审查流程与要点.pptx(22页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、会计学1代码审查代码审查(shnch)流程与要点流程与要点第一页,共22页。目录(ml)1.1.1.1.概述概述概述概述2.2.2.2.代码审查的目的代码审查的目的代码审查的目的代码审查的目的3.3.3.3.代码审查的好处代码审查的好处代码审查的好处代码审查的好处(ho(ho(ho(ho chu)chu)chu)chu)4.4.4.4.代码审查的局限性代码审查的局限性代码审查的局限性代码审查的局限性5.5.5.5.代码审查内容代码审查内容代码审查内容代码审查内容6.6.6.6.代码代码代码代码(di m)(di m)(di m)(di m)审查审查审查审查流程流程流程流程7.7.7.7.代码代
2、码代码代码(di m)(di m)(di m)(di m)审查审查审查审查工具工具工具工具第1页/共22页第二页,共22页。1.概述(i sh)Code Review Code Review代码审查是指软件开发过程中,通过对代码审查是指软件开发过程中,通过对代码审查是指软件开发过程中,通过对代码审查是指软件开发过程中,通过对源代码进行系统性检查的过程。通常的目的是查找各种源代码进行系统性检查的过程。通常的目的是查找各种源代码进行系统性检查的过程。通常的目的是查找各种源代码进行系统性检查的过程。通常的目的是查找各种缺陷,包括代码缺陷、功能实现问题、编码合理性、性缺陷,包括代码缺陷、功能实现问题、
3、编码合理性、性缺陷,包括代码缺陷、功能实现问题、编码合理性、性缺陷,包括代码缺陷、功能实现问题、编码合理性、性能优化等;保证软件总体质量和提高开发者自身能优化等;保证软件总体质量和提高开发者自身能优化等;保证软件总体质量和提高开发者自身能优化等;保证软件总体质量和提高开发者自身(zshn)(zshn)水平。水平。水平。水平。第2页/共22页第三页,共22页。2.代码(di m)审查的目的uu检查开发检查开发检查开发检查开发(kif)(kif)人员是否遵守开发人员是否遵守开发人员是否遵守开发人员是否遵守开发(kif)(kif)规范中的规定规范中的规定规范中的规定规范中的规定uu检查代码是否存在审
4、定表中的错误检查代码是否存在审定表中的错误检查代码是否存在审定表中的错误检查代码是否存在审定表中的错误uu检查代码是否存在逻辑错误、性能低下或安全问题检查代码是否存在逻辑错误、性能低下或安全问题检查代码是否存在逻辑错误、性能低下或安全问题检查代码是否存在逻辑错误、性能低下或安全问题第3页/共22页第四页,共22页。3.代码(di m)审查的好处uu提高代码质量提高代码质量提高代码质量提高代码质量uu及早发现潜在缺陷,降低修改及早发现潜在缺陷,降低修改及早发现潜在缺陷,降低修改及早发现潜在缺陷,降低修改/弥补缺陷的成本弥补缺陷的成本弥补缺陷的成本弥补缺陷的成本uu促进团队内部知识共享,提高团队的
5、整体水平促进团队内部知识共享,提高团队的整体水平促进团队内部知识共享,提高团队的整体水平促进团队内部知识共享,提高团队的整体水平uu评审过程对于评审人员来说,也是一种思路重构的过程,帮助更多的人评审过程对于评审人员来说,也是一种思路重构的过程,帮助更多的人评审过程对于评审人员来说,也是一种思路重构的过程,帮助更多的人评审过程对于评审人员来说,也是一种思路重构的过程,帮助更多的人理解系统理解系统理解系统理解系统uu是一种传递知识的手段,可以让其它并不熟悉代码的人知道作者的意图是一种传递知识的手段,可以让其它并不熟悉代码的人知道作者的意图是一种传递知识的手段,可以让其它并不熟悉代码的人知道作者的意
6、图是一种传递知识的手段,可以让其它并不熟悉代码的人知道作者的意图(yt)(yt)和想法,从而可以在以后轻松维护代码和想法,从而可以在以后轻松维护代码和想法,从而可以在以后轻松维护代码和想法,从而可以在以后轻松维护代码uu鼓励程序员们相互学习对方的长处和有点鼓励程序员们相互学习对方的长处和有点鼓励程序员们相互学习对方的长处和有点鼓励程序员们相互学习对方的长处和有点uu可以被用来确认设计和实现是否合理,检查设计是否清楚和简单可以被用来确认设计和实现是否合理,检查设计是否清楚和简单可以被用来确认设计和实现是否合理,检查设计是否清楚和简单可以被用来确认设计和实现是否合理,检查设计是否清楚和简单第4页/
7、共22页第五页,共22页。4.代码审查(shnch)的局限uu无法完全验证逻辑是否正确,无法检查功能是否完整;无法完全验证逻辑是否正确,无法检查功能是否完整;无法完全验证逻辑是否正确,无法检查功能是否完整;无法完全验证逻辑是否正确,无法检查功能是否完整;uu无法检测代码中遗漏的路径和数据敏感性错误无法检测代码中遗漏的路径和数据敏感性错误无法检测代码中遗漏的路径和数据敏感性错误无法检测代码中遗漏的路径和数据敏感性错误uu不验证规格的正确性不验证规格的正确性不验证规格的正确性不验证规格的正确性uu代价高昂,对于以上局限,需要编写代价高昂,对于以上局限,需要编写代价高昂,对于以上局限,需要编写代价高
8、昂,对于以上局限,需要编写(binxi)(binxi)正确的详尽的测正确的详尽的测正确的详尽的测正确的详尽的测试用例,进行功能测试和集成测试来弥补。试用例,进行功能测试和集成测试来弥补。试用例,进行功能测试和集成测试来弥补。试用例,进行功能测试和集成测试来弥补。第5页/共22页第六页,共22页。5.审查(shnch)内容uu基本规范:检查代码编写是否满足编码规范;基本规范:检查代码编写是否满足编码规范;基本规范:检查代码编写是否满足编码规范;基本规范:检查代码编写是否满足编码规范;uu程序逻辑:检查基本的程序逻辑、性能、安全性等是否存在问程序逻辑:检查基本的程序逻辑、性能、安全性等是否存在问程
9、序逻辑:检查基本的程序逻辑、性能、安全性等是否存在问程序逻辑:检查基本的程序逻辑、性能、安全性等是否存在问题,用户交互流程是否满足正常的软件使用要求;题,用户交互流程是否满足正常的软件使用要求;题,用户交互流程是否满足正常的软件使用要求;题,用户交互流程是否满足正常的软件使用要求;uu软件设计:检查软件的基础设计、模块之间的耦合关系软件设计:检查软件的基础设计、模块之间的耦合关系软件设计:检查软件的基础设计、模块之间的耦合关系软件设计:检查软件的基础设计、模块之间的耦合关系(gun(gun x)x)、第三方库或框架的使用是否合理。、第三方库或框架的使用是否合理。、第三方库或框架的使用是否合理。
10、、第三方库或框架的使用是否合理。代码审查代码审查(shnch)(shnch)分分3 3个等级:个等级:第6页/共22页第七页,共22页。5.1基本(jbn)规范 项目在立项项目在立项项目在立项项目在立项(l xin)(l xin)时需确定本项目所遵循的编码规范,如有特时需确定本项目所遵循的编码规范,如有特时需确定本项目所遵循的编码规范,如有特时需确定本项目所遵循的编码规范,如有特殊要求,可在通用编码规范基础上进行适当修改。纯殊要求,可在通用编码规范基础上进行适当修改。纯殊要求,可在通用编码规范基础上进行适当修改。纯殊要求,可在通用编码规范基础上进行适当修改。纯C+/VC+C+/VC+开发项开发
11、项开发项开发项目应遵守目应遵守目应遵守目应遵守C+C+编码规范,编码规范,编码规范,编码规范,C#C#开发项目应遵守开发项目应遵守开发项目应遵守开发项目应遵守C#C#编码规范,混编码规范,混编码规范,混编码规范,混合开发项目应遵守两种编码规范。合开发项目应遵守两种编码规范。合开发项目应遵守两种编码规范。合开发项目应遵守两种编码规范。第7页/共22页第八页,共22页。5.1基本(jbn)规范:案例11.1.成员变量命名不规范;成员变量命名不规范;成员变量命名不规范;成员变量命名不规范;2.2.成员变量访问权限申明方式不一致;成员变量访问权限申明方式不一致;成员变量访问权限申明方式不一致;成员变量
12、访问权限申明方式不一致;3.3.代码代码代码代码(di m)(di m)之间的空行不符合规范;之间的空行不符合规范;之间的空行不符合规范;之间的空行不符合规范;4.4.部分成员变量只有申明,没有初始化;部分成员变量只有申明,没有初始化;部分成员变量只有申明,没有初始化;部分成员变量只有申明,没有初始化;5.5.没有注释没有注释没有注释没有注释第8页/共22页第九页,共22页。5.1基本规范(gufn):案例21.1.一个代码文件中包含多个类;一个代码文件中包含多个类;一个代码文件中包含多个类;一个代码文件中包含多个类;2.2.一个代码文件中代码过长;一个代码文件中代码过长;一个代码文件中代码过
13、长;一个代码文件中代码过长;3.3.有的类中成员有的类中成员有的类中成员有的类中成员(chngyun)(chngyun)变量有初始值,有的没有;变量有初始值,有的没有;变量有初始值,有的没有;变量有初始值,有的没有;4.4.有的类有注释,有的类有注释,有的类有注释,有的类有注释,有的没有。有的没有。有的没有。有的没有。第9页/共22页第十页,共22页。5.2程序逻辑 程序逻辑检查软件基本的程序逻辑是否合理,包括循程序逻辑检查软件基本的程序逻辑是否合理,包括循程序逻辑检查软件基本的程序逻辑是否合理,包括循程序逻辑检查软件基本的程序逻辑是否合理,包括循环、递归、线程、事务等代码结构上的合理性。还包
14、括异环、递归、线程、事务等代码结构上的合理性。还包括异环、递归、线程、事务等代码结构上的合理性。还包括异环、递归、线程、事务等代码结构上的合理性。还包括异常处理、性能、重复代码、可优化代码,无效常处理、性能、重复代码、可优化代码,无效常处理、性能、重复代码、可优化代码,无效常处理、性能、重复代码、可优化代码,无效(wxio)(wxio)代代代代码等的检查。在代码程度上检查用户界面操作逻辑是否正码等的检查。在代码程度上检查用户界面操作逻辑是否正码等的检查。在代码程度上检查用户界面操作逻辑是否正码等的检查。在代码程度上检查用户界面操作逻辑是否正确、布局是否合理、用户提示是否简捷明了、是否存在重确、
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 代码 审查 流程 要点
限制150内