代码评审资料总结CodeReview.docx_第1页
代码评审资料总结CodeReview.docx_第2页
代码评审资料总结CodeReview.docx_第3页
代码评审资料总结CodeReview.docx_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Code Review (代码评审)评审项目组针对代码培训的资料总结。What is Code Review(什么是代码评审)Code review is systematic examination (often as peer review) of computer source code intended to find and fix mistakes overlooked in the initial development phase, improving both the overall quality of software and the developers skills.代码评审是指在软件开发过程中,通过对源代码进行系统性检查的过程。通常的目的是查找系统缺陷,保证软件总体质量和提高开发者自身水平。Why we do Code Review(为什么进行代码评审)1. 提高质量2. 及早发现潜在缺陷与BUG,降低事故成本。3. 促进团队内部知识共享,提高团队整体水平4. 评审过程对于评审人员来说,也是一种思路重构的过程。帮助更多的人理解系统。5. Types of Code Review(代码评审的几种类型)Code review practices fall into two main categories: formal code review and lightweight code review.一般来说,代码评审分为正式代码评审与轻量级代码评审俩种.Formal Code Review(正式代码评审)Fagan inspection(著名的范根检查法):Fagan inspection refers to a structured process of trying to find defects in development documents such as programming code, specifications, designs and others during various phases of the software development process. It is named after Michael Fagan who is credited with being the inventor of formal software inspections.范根检查法是一种正式的,结构化的软件评审方式,它针对的对象包含了软件开发生命周期中的需求说明、系统设计、测试样例以及程序代码等大部分输出物。Roles Author/Designer/Coder: 作者 Reader: paraphrases the document(阅读者) Tester: reviews the document from a testing standpoint(评审员) Moderator: responsible for the inspection session, functions as a coach(协调人) Recorder:record detects.(记录员)FlowLightweight Code Review(轻量级代码评审)Lightweight code review typically requires less overhead than formal code inspections, though it can be equally effective when done properly. Lightweight reviews are often conducted as part of the normal development process:相对于正式代码评审,轻量级代码评审所需要的各种成本要明显低的多,如果流程正确,它可以起到更加积极的效果。正因如此,轻量级代码评审经常性得被引入到软件开发过程中。延伸阅读:Michael Fagan? father of a legacy几种常见的轻量级代码评审方式: Over-the-shoulder One developer looks over the authors shoulder as the latter walks through the code.(它由作者启动和主持评审,作者向评审者展示文档。优点是启动快,成本低,缺点是容易被作者误导过程) Email pass-around Source code management system emails code to reviewers automatically after checkin is made.(优点自动化,可以及时提供最新代码进行评审,缺点是无法达到人工筛选的功效) Pair Programming Two authors develop code together at the same workstation, such is common in Extreme Programming.(源于XP,作者与评审者平级,可以帮助同伴间的学习和共享) Review Meeting (定期组织review会议,轮流有团队成员选出自己的评审作品,需要系统化得预备、总结和追踪。优点可以提高团队整体技能和对产品的理解,缺点是评审范围有限,成本较高 ) Tool-assisted code review Authors and reviewers use specialized tools designed for peer code review. (大量的代码评审工具,比较流行的checkstyle/findbugs/pmd)本文以下内容都是指针对轻量级代码评审进行进一步讨论。Options of Code Review(代码评审的选择) 最近一次迭代开发的代码 系统关键模块 业务较复杂的模块 缺陷率较高的模块 Practice of Code Review(代码评审实践)Something youd better to realize.(注意事项) 代码评审不是批斗会,不能以缺陷和错误来打击开发人员的积极性。“Oh Man!your code sucks!”是更加不允许的。评审的目标的提高质量和提高整体水平,作者应该带着学习和提高的态度来参加评审。 代码集体所有制:对发现的问题要本着整体承担责任 的原则,因此建议把代码质量与团队绩效(而不是个人绩效)挂钩。 评审程度,进行一次整体的地毯式的评审成本很高。 代码评审的可操作性,首先需要评审团队具备经验丰富的系统架构师和精通业务的行业专家。其次团队需建立

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论