论坛首页 综合技术论坛

公司里,不应该允许开发人员在项目代码中署上自己的名字

浏览 26108 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-04-14  
最近做了比较多项目管理方面的工作,因此这方面想的也比较多。
举个反面例子:
java 代码
  1. /**  
  2.  * @author rongjunXue  
  3.  */  
  4. public class SayHi{   
  5.     //......   
  6.    say("Hello, javayey!);   
  7.    //......   
  8. }   
然后,wangwen修改里面的拼写错误:
java 代码
  1. /**  
  2.  * @author rongjunXue  
  3.  */  
  4. public class SayHi{   
  5.     //......   
  6.    say("Hello, javaeye!);   
  7.    //......   
  8. }   

最后由suzhenhui完成,badqiu修正了其中的一个BUG:

java 代码
  1. /**  
  2.  * @author rongjunXue,badqiu  
  3.  */  
  4. public class SayHi{   
  5.     //......   
  6.     //非常复杂的业务实现      
  7.     //......   
  8. }  
最后从代码看,往往会以为这段代码是由rongjunXue完成,并由badqiu做了修改。但事实完全不是这样。
事实是,第一个开发者只是写了个锥形,最终代码业务逻辑由suzhenhui完成,badqiu修正了其中的一个BUG。
当上面的业务逻辑出现问题时,应该找suzhenhui或badqiu,而不是找rongjunXue.
 
再加一个反面例子:
java 代码
  1. //方法描述  Add By ZhangShan   
  2. public List getListMethod(){   
  3.     //.........................   
  4. }  
其实,我们完全可以通过CVS和Eclipse查看到每一行代码的归属和变更历史,请看附图。
在Eclipse CVS视图中,左边会高亮显示代码中光标所在行的最后修改者,右下角可以选不同版本进行代码比较。
  • 描述: 通过CVS和Eclipse查看到每一行代码的归属和变更历史
  • 大小: 548.3 KB
   发表时间:2007-04-14  
代码共享,不署名

团队成员谁都有修改和改进的权力

某个地方出了问题,不应该找写代码的某个人

整个团队都有责任

避免互相推卸责任
0 请登录后投票
   发表时间:2007-04-14  
写在上面一目了然,cvs对比多累。
写上名字不等于负责,spring,webwork等等代码都有名字
0 请登录后投票
   发表时间:2007-04-14  
搞不懂你们怎样处理,CVS可以看到修改记录及修改者.
另外修改时,应规范在代码开始区块注明remark
及提交时必须添加每次修改的原因.
署名是对编程者的一种肯定.
0 请登录后投票
   发表时间:2007-04-16  
完全不署名也太极端。JDK 代码也极少有不署名的。当项目大起来的时候,不可能每个人对所有的代码都了如指掌,巨细无遗,但是署名的这个人,必定对这个类的结构有最深的认识,而且通常他就是这个类的创建者。所以一旦对这个类的设计有不清楚的地方,首先找署名的这个人就是了。这并非将别人的什么责任推到他身上。
0 请登录后投票
   发表时间:2007-04-24  
还是建议署名,有不明白的时候可以找得到人
就算暑名的人不是主要实现者,至少可以提供线索

“当上面的业务逻辑出现问题时,应该找suzhenhui或badqiu,而不是找rongjunXue.”

要是不署名你甚至会去找 suzhenhui111,badqiu222,rongjunXue333
0 请登录后投票
   发表时间:2007-04-24  
eyejava 写道
写在上面一目了然,cvs对比多累。
写上名字不等于负责,spring,webwork等等代码都有名字


写在上面并不会一目了然,恰恰会导致误会。我上面已经有论述了。
我也没有说写上名字就等于负责,代码是共同所有的,或说是公司所有的,只是写上名字往往会因为“一目了然”而让其他同事遇到问题时不能快速准确地定位咨询对象。
0 请登录后投票
   发表时间:2007-04-24  
wing5jface 写道
署名是对编程者的一种肯定.


很赞成这种理解。但署名的方式应该更科学一些,我们CVS上都详细准确地记录着代码提交者的名字的。(结对编程时这种方式就不适用了,但我们极少会结对编程)
在项目中再添加一个明文记录开发者及其参与过的模块的txt文件会不会更好些呢?这样即肯定了编程者又不会带来副作用。
0 请登录后投票
   发表时间:2007-04-24  
署名应该更加详尽,
作者 时间 动作(创建还是修正),修正部分
0 请登录后投票
   发表时间:2007-04-24  
weiqingfei 写道
署名应该更加详尽,
作者 时间 动作(创建还是修正),修正部分

这些都是有工具支持的,如果没有合适的自己写个小脚本就可以了,支持cvs和svn都可以啊。
0 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics