- 浏览: 487457 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
gapper:
多谢!!!
软件项目解决方案模板 -
lxyizy521:
感谢你无私的分享,正头疼文档的事情呢。
软件项目解决方案模板 -
flyisland:
不错的资料收集的心得,多谢分享!
如何从小工到专家——Dreyfus模型应用 -
a254124185:
Java编码规范及实践 -
clj2008tom:
LZ好久没更新了,呵呵
graphviz 在redhat as4 下的安装
整理了一下Code Review中的模式,也就是最佳实践了。Code Review是公认的软件开发最佳实践,但具体执行效果差别很大,希望收到大家的意见和建议。
具体文档见附件,下边是最佳实践关系图和目录。
目录
1 概述 7
2 定义 7
3 CODE REVIEW概述 7
3.1 为什么要进行CODE REVIEW 7
3.2 CODE REVIEW与开发人员价值观 7
3.3 CODE REVIEW主要实践概览 8
4 CODE REVIEW 模式 9
4.1 创建一个积极的CODE REVIEW的氛围。 9
4.1.1 目的 9
4.1.2 上下文 9
4.1.3 实施 9
4.1.4 何时使用 9
4.1.5 相关实践 9
4.1.6 参考资料 9
4.2 让CODE REVIEW变得更加有趣。 10
4.2.1 目的 10
4.2.2 上下文 10
4.2.3 实施 10
4.2.4 何时使用 10
4.2.5 相关实践 10
4.2.6 参考资源 10
4.3 使用FINDBUGS进行静态分析 10
4.3.1 目的 10
4.3.2 上下文 11
4.3.3 实施 11
4.3.4 何时使用 11
4.3.5 相关实践 11
4.3.6 参考资源 11
4.4 使用JUPITER进行CODE REVIEW 11
4.4.1 目的 11
4.4.2 上下文 11
4.4.3 实施 11
4.4.4 何时使用 12
4.4.5 相关实践 12
4.4.6 参考资源 12
4.5 建立一个全局CHECKLIST,并经常更新。 12
4.5.1 目的 12
4.5.2 上下文 12
4.5.3 实施 12
4.5.4 何时使用 13
4.5.5 相关实践 13
4.5.6 参考资源 13
4.6 创建一份用于个人的CHECKLIST 13
4.6.1 目的 13
4.6.2 上下文 13
4.6.3 解决方案 13
4.6.4 何时使用 13
4.6.5 相关实践 13
4.6.6 参考资源 13
4.7 明确CODE REVIEW的范围。 14
4.7.1 目的 14
4.7.2 上下文 14
4.7.3 实施 14
4.7.4 何时使用 14
4.7.5 相关实践 14
4.7.6 参考资源 14
4.8 对修改的代码进行CODE DIFF REVIEW 。 14
4.8.1 目的 14
4.8.2 上下文 14
4.8.3 实施 15
4.8.4 何时使用 15
4.8.5 相关实践 15
4.8.6 参考资源 15
4.9 对设计思路进行REVIEW。 15
4.9.1 目的 15
4.9.2 上下文 15
4.9.3 实施 15
4.9.4 何时使用 16
4.9.5 相关实践 16
4.9.6 参考资源 16
4.10 以模块为单位进行及时的REVIEW。 16
4.10.1 目的 16
4.10.2 上下文 16
4.10.3 实施 16
4.10.4 何时使用 16
4.10.5 相关实践 16
4.10.6 参考资源 17
4.11 代码审查(CODE INSPECTION) 17
4.11.1 目的 17
4.11.2 上下文 17
4.11.3 实施 17
4.11.4 何时使用 17
4.11.5 相关实践 17
4.11.6 参考资源 17
4.12 专家CODE REVIEW 18
4.12.1 目的 18
4.12.2 上下文 18
4.12.3 实施 18
4.12.4 何时使用 18
4.12.5 相关实践 18
4.12.6 参考资源 18
4.13 小组走查 18
4.13.1 目的 18
4.13.2 上下文 18
4.13.3 实施 19
4.13.4 何时使用 19
4.13.5 相关实践 19
4.13.6 参考资源 19
4.14 随机CODE REVIEW 19
4.14.1 目的 19
4.14.2 上下文 20
4.14.3 实施 20
4.14.4 何时使用 20
4.14.5 相关实践 20
4.14.6 参考资源 20
4.15 四眼CODE REVIEW 21
4.15.1 目的 21
4.15.2 上下文 21
4.15.3 实施 21
4.15.4 何时使用 21
4.15.5 相关实践 21
4.15.6 参考资源 21
4.16 自查 21
4.16.1 目的 21
4.16.2 上下文 21
4.16.3 实施 22
4.16.4 何时使用 22
4.16.5 相关实践 22
4.16.6 参考资源 22
4.17 结对编程 22
4.17.1 目的 22
4.17.2 上下文 22
4.17.3 实施 22
4.17.4 何时使用 23
4.17.5 相关实践 23
4.17.6 参考资源 23
4.18 交叉REVIEW。 23
4.18.1 目的 23
4.18.2 上下文 23
4.18.3 实施 24
4.18.4 何时使用 24
4.18.5 相关实践 24
4.18.6 参考资源 24
4.19 PM应该保证CODE REVIEW的资源和时间。 24
4.19.1 目的 24
4.19.2 上下文 24
4.19.3 实施 24
4.19.4 何时使用 24
4.19.5 相关实践 24
4.19.6 参考资源 24
4.20 代码CHECK IN之前进行CODE REVIEW。 25
4.20.1 目的 25
4.20.2 上下文 25
4.20.3 实施 25
4.20.4 何时使用 25
4.20.5 相关实践 25
4.20.6 参考资源 25
4.21 CODE REVIEW HOUR&CODE REVIEW DAY。 25
4.21.1 目的 25
4.21.2 上下文 25
4.21.3 实施 25
4.21.4 何时使用 26
4.21.5 相关实践 26
4.21.6 参考资源 26
4.22 跟踪CODE REVIEW的问题,确保得到解决。 26
4.22.1 目的 26
4.22.2 上下文 26
4.22.3 实施 26
4.22.4 何时使用 26
4.22.5 相关实践 26
4.22.6 参考资源 26
4.23 进行缺陷分析,确定哪些问题可以在CODE REVIEW时避免。 27
4.23.1 目的 27
4.23.2 上下文 27
4.23.3 实施 27
4.23.4 何时使用 27
4.23.5 相关实践 27
4.23.6 参考资源 27
4.24 在部门内设置代码官,负责日常CODE REVIEW活动的组织。 27
4.24.1 目的 27
4.24.2 上下文 27
4.24.3 实施 28
4.24.4 何时使用 28
4.24.5 相关实践 28
4.24.6 参考资源 28
4.25 记录个人的CODE REVIEW问题积分。 28
4.25.1 目的 28
4.25.2 上下文 28
4.25.3 实施 28
4.25.4 何时使用 28
4.25.5 相关实践 29
4.25.6 参考资源 29
4.26 记录个人作为REVIEWER的时间。 29
4.26.1 目的 29
4.26.2 上下文 29
4.26.3 实施 29
4.26.4 何时使用 29
4.26.5 相关实践 29
4.26.6 参考资源 29
4.27 每次REVIEW的代码最好不要超过200-400行。 29
4.27.1 目的 29
4.27.2 上下文 29
4.27.3 实施 30
4.27.4 何时使用 30
4.27.5 相关实践 30
4.27.6 参考资源 30
4.28 保持REVIEW的速率低于每小时300-500行。 31
4.28.1 目的 31
4.28.2 上下文 31
4.28.3 实施 31
4.28.4 何时使用 31
4.28.5 相关实践 31
4.28.6 参考资源 32
4.29 每次REVIEW不超过60-90分钟。 32
4.29.1 目的 32
4.29.2 上下文 32
4.29.3 实施 32
4.29.4 何时使用 32
4.29.5 相关实践 32
4.29.6 参考资源 32
4.30 选择合适的CODE REVIEW时间点。 33
4.30.1 目的 33
4.30.2 上下文 33
4.30.3 实施 33
4.30.4 何时使用 33
4.30.5 相关实践 33
4.30.6 参考资源 33
4.31 选择合适的CODE REVIEW方法。 34
4.31.1 目的 34
4.31.2 上下文 34
4.31.3 实施 34
4.31.4 何时使用 34
4.31.5 相关实践 34
4.31.6 参考资源 35
5 参考资料 36
- Code_Review_Patterns.pdf (421.8 KB)
- 下载次数: 192
评论
我还没看完呢,这本书不错
你看错了,是The Art of Agile Software Development,呵呵。
我还没看完呢,这本书不错
发表评论
-
如何在公司中引入新思路——fearless change
2009-09-28 00:21 1413我前面的博客也提到,在一个公司中,引入一个新的想法,获得成功并 ... -
团队分析与设计(TeamAnalysisDesignPattern)
2009-04-11 14:31 14461)Problem 问题域比较复杂,团队中没有人能 ... -
极限会议模式(ExtremeMeeting)
2009-03-17 13:38 1893名字自己随便取的,如有雷同,纯属巧合。 1. Proble ... -
5W问题分析模式
2009-03-10 08:41 01. Problem 当遇到问题,手足无措时。 2. So ... -
影响分析模式(InfluenceAnalysisPattern)
2009-03-06 23:58 12581. Problem 解决问题,进行决策和面对改变时, ... -
全局目标导向模式(GlobalTargetOrientedPattern)
2009-03-05 23:08 9641. Problem 一个团队在做事情的过 ... -
通讯录模式(AddressListPattern)
2009-03-02 22:10 1527模式是实践的抽象,今天我来总结一下通讯录模式。 1. Pr ... -
导航者模式(NavigatorPattern)
2009-02-28 10:40 01. Problem 人是容易犯错的,而且但线条的。 ... -
Double Dispatch(双分派)
2009-02-04 11:24 2501参考资料: http://en.wikipedia ... -
有人的地方就有江湖
2009-01-30 08:54 2343有人的地方就有 ... -
设计模式快速参考-参观者模式
2008-12-06 07:27 1672参观者模式主要对一组固定结构的对象进行访问,一般和组合模式一起 ... -
设计模式快速参考-模板方法模式
2008-12-06 07:21 1094abstract class TravelTemplate ... -
设计模式快速参考-策略模式
2008-12-06 07:17 1208//密钥对生成接口 interface IKeyPairGen ... -
设计模式快速参考-观察者模式
2008-12-06 07:13 1315//主题,这里是快餐店 class SnackShop{ ... -
设计模式快速参考-命令模式
2008-12-06 07:10 1311interface ICommand{ void e ... -
设计模式快速参考-代理模式
2008-12-06 07:07 1247class FileDownloader( publ ... -
设计模式快速参考-外观模式
2008-12-06 07:03 1078为一组类提供简单的外部接口,使外部调用者不需要和所 ... -
设计模式快速参考-组合模式
2008-12-06 07:00 1080abstract class Hardware{ } cla ... -
设计模式快速参考-适配器模式
2008-12-06 06:49 1267interface Powerable{ 110v ... -
设计模式快速参考-单例模式
2008-12-06 06:46 1227class Singleton{ private Si ...
相关推荐
With ample test examples running against a life-like e-commerce store and detailed step-by-step code review and explanations, you will be ready to test any challenge web developers might throw your ...
Review best practices for patterns and anti-patterns Master SOLID principles: single-responsibility, open/closed, Liskov substitution Manage the versatility of interfaces for adaptive code Perform ...
The details are described with Java code examples and UML diagrams. Each pattern description also includes a discussion section that offers more in-depth information for the curious. For example, the...
The text begins with a review of the Unified Modeling Language (UML) notation and semantics then introduces the Rapid Object-Oriented Process for Embedded Systems (ROPES) process and its key ...
Review patterns for organizing business logic Use event sourcing and CQRS together to model complex business domains more effectively Delve inside the persistence layer, including patterns and ...
We’ll also talk about reading code, what makes a program readable, and how to review code that others have written with an eye to making it better. Can good, readable code replace documentation? How...
Written like a code review, this book presents a detailed “how” and “why” for each topic, explaining Apple-specific design patterns as they come up and pulling lessons from other popular apps....
Review patterns for organizing business logic Use event sourcing and CQRS together to model complex business domains more effectively Delve inside the persistence layer including patterns and ...
Written like a code review, this book presents a detailed "how" and "why" for each topic, explaining Apple-specific design patterns as they come up and pulling lessons from other popular apps....
oriented interface Choose the best pattern for organizing business logic and behavior Review and apply the patterns for separating the UI and presentation logic Delve deep into the patterns and ...
Review Your Code Get Your Tools in Order Tip 8. Optimize Your Environment Tip 9. Speak Your Language Fluently Tip 10. Know Your Platform Tip 11. Automate Your Pain Away Tip 12. Control Time (and ...
Alerts are presented in a concisecode-review manner indicating patterns of misuse by your application. Tostreamline your efforts to correct the misuse, we provide links to theproblematic code section...