说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

寓教于乐 给代码审查者的几点建议

HTML文档下载 WORD文档下载 PDF文档下载
代码审查涉及四大领域,开发者自身、审查者、学习者以及传教者。可以说,贯穿整个技术和知识领域。本文我们将阐述这四者之间的关系,并给代码审查者提出几点建议,更好的为你的项目和团队做贡献。

原文作者Anna Gos发表了一篇博文《Code review FTW》,以下为译文:

在软件开发项目中同行代码审查是一种常见的做法。有人认为,代码审查有助于识别潜在的Bug以及规范项目编码标准。虽然我不同意这个观点,但不可否认的是代码审查对项目和团队的确有很大帮助。代码审查涉及四大领域,开发者自身、审查者、学习者以及传教者。可以说,贯穿整个技术和知识领域。


Teaching + Programming (教学+编程):代码审查为你提供与同伴分享编程知识的好机会。在这里不是为了炫耀你学到的最新技巧,而是去帮助改善另一名开发者的技能。作为一名程序员你可以积极的贡献出个人的成长历程,提供最宝贵的经验反馈。利用特定的技术或者引入具体的项目实践是指导新手的两大最有效方法。

Teaching + Domain(教学+域):大多数内置的软件项目具有不平凡的域特点。 一个不平凡的域需要大量的模型来表示其行为和代码属性。由于代码的模型行为和属性是两个密不可分的部分。因此,审查者在整个域建模思路中扮演一个极其重要的角色。

Learning + Programming(学习+编程):开发者在代码审查上会利用不同方法来解决问题。观察和理解其他程序员编写的代码是改善代码风格、掌握技术、了解新的类库以及学习新的模式最有效的方式之一。

Learning + Domain(学习+域):在代码中捕获信息是学习域的概念和整体功能一项最基本的资源。代码实际上是一个软件系统最详细的文档列表。理解性的阅读代码能够有助于扩展理解系统以外的内容。

大多数开发者会在代码审查领域中游离,因为他们想成为更好的程序员以及学习更多的域知识。尽管有些开发者有机会学到更多,但他们常常会因此而感到满足。如果一名开发者在某个项目中采用新技术(除了这个领域的专家),他将扮演两个角色。在某种情况下审查者会发现自己同时处在四个领域。意识到这些领域的优势是做代码代码审查最宝贵的经验,无论审查者的资历水平如何。

给代码审查者的几点建议:

让团队中的所有开发者拥有代码所有权——作为开发者,我们喜欢在家编码的感觉。代码审查从代码所有者切换至团队作者,他们拥有共同的利益。这种关系的转换使得整个团队都在为代码质量而负责,任何一名团队成员都应积极拥抱变化。此外,在极限编程中还涉及到共享代码(或集体代码所有权)问题。

逐步提高开发者的编码技能——同行审查能够提高团队的平均技能水平。此外,它还具备了无形的压力促使开发者更写更好的代码。

传播域知识——理解从代码中捕获的功能有助于在整个团队成员之间传播(共享)系统知识。它使整个团队间更有凝聚力,有效避免了任何一名开发者在任意系统工作领域中“挑三拣四”的情况发生。

培养集体智慧——团队整体完成的项目质量要远远高出开发者独自完成工作的总和。每位开发者都可带来不同的技能,实现协同编程,为团队“添砖加瓦”。

代码审查是我最喜爱的团队建设活动之一。它不仅是关注代码,而且还能见证整个团队的成长。值得一提的是,结队编程常被看作是代码审查的一种极端形式,这是一种值得推崇的代码审查方式。

英文出自:Anna Gos

响应高达6秒 用户揭露Heroku修改路由“50倍圈钱”? [探讨]响应式设计四大原则 Linux Kernel 3.8发布 停止支持386设备 HTML5手机游戏引擎Devkit开源 程序员的一天:台湾个人移动游戏开发者 极限破解:利用低温环境读取Android加密数据 五种工具保护你的在线隐私 从打压到支持 微软与GitHub的爱恨情仇 “夫妻档”初创公司百万美元打造实时Hadoop系统 编程从娃娃抓起:13岁儿童的移动游戏之梦 新浪管理层调整 许良杰任CTO兼联席总裁 Java,你还会让多少人继续“受伤”? 中国或超美国 成全球智能设备市场霸主 告别手写 API文档生成工具推荐 微软Azure超越亚马逊云计算的性能测试 苹果创新已经被三星超越 不靠广告也盈利:移动应用掘金7大案例剖析 谈Clash of Clans货币化的成功 UX设计师应当规避的七大问题 初创公司Citus Data将CitusDB扩展到Hadoop 移动医疗:巢儿孵化器为何笃信是创业金矿? 一个新的雅虎:雅虎主页改版 谷歌发布Google Glass最新视频 公开接受预定 微软Windows Blue结束半程开发 或今年8月推出 JavaFX即将开源,支持iOS与Android开发 趣味编程网Codecademy携手Twitter、Evernote、Box等推出系列API教程 开发者,别让任何人绑架你的工作节奏 REST Style来袭 LinkedIn开源Rest.li框架 [探讨] 是用jQuery框架还是自造车轮呢? 一周消息树:Java 你还会让多少人继续“受伤”? Chromebook Pixel,揭开谷歌云世界的大幕 内存分配存在的问题 怎么设计ADSL的路由!! javaben的释放问题 用NMUDP如何在Client端和Server端之间传递对象呢? 为什么程序员没人爱? 指点迷津啊??? 关于DataGrid的一个问题 VCD碟的.DAT文件转换成MPEG格式? 中秋节快乐!散!顺便问一下大家都吃什么品牌的月饼?五点钟准时结贴!!!!!!!!!!!! 求助!!!鲁文易盘无法驱动 如何获取提交表单的内容 Ado 问题 oracle中删除一个用户,用语法如何写 北京的兄弟们你们找工作通过哪几种方式 请问哪儿有cobol的编译器? 请问考系分的兄弟,都在看什么辅导书啊? 不能解决的给分,解决的给钱,时间限制在,13日之前!!!!!!!!!!!! 如何重新定义超连接的样式? ini和注册表能不能一起用? 调制解调器 SYNC灯不亮。 hehe GCC不认识sockaddr_in,但认识sockaddr,哪位大侠指点一下是什么地方没有配置好 asp中的过程和函数是否可以传递两个以上的参数? 假设我在dataGrid中的修改某一个单元格内容之后,焦点还没有离开,再去保存,就保存不了! 求助!!!鲁文易盘无法驱动,急!!!!!!!!!! 为什么只能用localhost访问? 还是烦人乱码问题~~JSP 连不上网。 人家说我有热情没天分,当不了程序员 中秋节给大家助助兴,小游戏一只,最终获胜的可获全部分数,100大分哦! 简单问题,急! 请教零长度问题(不好意思没分了救命啊) 请教零长度问题(不好意思没分了救命啊) sizeof的问题 今天的最近一问.... 写一个参数有默认值的函数出现的问题! 请教零长度问题(不好意思没分了救命啊) 有个关于可见性的问题,请指点, Delphi6中控制Excell2000的Chart的问题 看哪个地方出名人多 c++ 求学 (更上一层楼) 请教零长度问题(不好意思没分了救命啊) 高分寻求jtest4.5的破解 或注册方法 关于批量删除不同目录下相同文件的问题。 如何在VFP中运行VFP代码? 如何调用chm帮助文件? iptables问题 请教零长度问题(不好意思没分了救命啊) 大家來討論工作的問題 能用c语言编有关网络的程序吗?谢谢大侠们了:) 要在程序中控制在DBCHART显示不同颜色部分的内容及数值,如'34 丰田',来者有分? 王大爷养的鸭和鹅只数比是5:3,已知鸭的植树比鹅多32只,王大爷养的鸭和鹅一共有多少只?急紧急 英语翻译With the deepen of reform and China’s opening up to the outside world,contrasts between China and other courtiers began to catch our attention.Transcultural communication becomes more and more significant.The cross-culture communicative 英语翻译BOOKING IN QUERIERIt is in all interests to ensure that the details given to the inbound logistics co-ordinator are correct .if ,however,the information is incomplete or there is a query then the is a query them the following action will 英语翻译She is the best ever happened to me.She is the best ever crashed on me. 王奶奶饲养白鹅72只,比黑鹅少20%,养黑鹅多少只 什么是正奇数?正奇数和奇数的区别是? 英语翻译Mini Folio,Mini Pak,Play thru 求N个正奇数的和是什么啊! 第2004个正奇数是什么? -1是不是奇数 一是不是奇数 阿尔及利亚军队在边境地区查获大批武器杭州西湖景区将开发APP平台掌上西湖人大信访局原副局长辞职当律师 称不是北京网监调查“查开房”网 律师建议警猪蹄店曝政府打白条欠70万 官员称上我国海军三大舰队首次在西太平洋展开实农业部回应转基因大米动物试验:旨在科山西平顺爆粗口局长:干部间这么说话会中方呼吁2015年后发展议程加大对非联合国说对叙利亚人道主义救援行动尚未俄罗斯法律规定亲友要对恐怖分子行为担周口一官员接受组织调查每天锻炼一小时健康生活一辈子“教师节送健康”大型公益活动启动痛风不坚持治疗后果很严重曼谷爆炸案主嫌犯“黄衣男”落网郑州大庙围攻日军总指挥这里有免费技能培训如何做个聪明的“腰突症”患者市场严重分化再现千股跌停《奔跑吧,兄弟》确实要来洛阳录制张继科再次“空降”郑州幸运之子特种黑道狗与地下城火影之日向耀光网游之三国奈叶同人之幻想之星国球荣耀强锋宅男突击队僵尸王归来海贼王之新时代的降临东崖云舫旅游回香阁旅游小天台旅游小花台旅游纳加阔特观景台旅游纳加阔特旅游博达哈大佛塔旅游王官峪旅游上海游龙石文化科普馆旅游八音盒珍品陈列馆旅游宝山国际民间艺术博览馆旅游
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘