评论中的旧代码

For*_*uke 17 version-control maintenance comments

您应该在代码库中注释旧代码多长时间?承包商继续将旧代码保留在代码库中,将其转换为注释.这真的令人沮丧,我希望他们只删除旧代码而不是评论它.

是否有正当理由将旧代码保留在代码库中作为注释?我正在使用Visual Sourcesafe的版本控制

Tom*_*Tom 48

如果你使用像SVN或CVS这样的东西,没有.我会在视线中擦掉它们.它们使代码的可读性降低.

应该有评论来帮助正在阅读代码,解释内容等的程序员.

  • 如果你没有使用VCS,那么你会遇到比承包商混乱你的代码库更严重的问题. (5认同)
  • 他说他们正在使用Visual Sourcesafe.已经有好几次(很久以前)Visual Sourcesafe和我相处不好让我感觉安全删除旧代码. (2认同)

bal*_*pha 14

我能想到的一个正当理由是这个(虚构的)例子:

# removed the following test because this should work now that bug #12345 is fixed.
#assert a != 0
b = number / a
Run Code Online (Sandbox Code Playgroud)

基本上,为了防止其他开发人员重新插入因某种原因而被删除的代码.

  • 同意.如果有人看到了做某事的另一种方式 - 他们会明白,出于某种原因,并没有这样做. (2认同)

Ken*_*Liu 10

告诉承包商停止这样做.这是一种可怕的做法.

没有任何理由在代码库中保留旧代码; 它只是妨碍了.您的版本控制系统将显示每个文件的历史记录.

保留旧代码的唯一可能的好理由可能是历史参考(可能是旧代码做了一些特别奇怪的事情,可能与当前情况有关).

偶尔我会发布代码,知道我正在暂时改变(暂时我的意思是不到几天)并且肯定打算回到它.

编辑:另一个相关的做法是在文件中放置更改的名称和日期:

// 06/20/2009 - joe changed this #1245
Run Code Online (Sandbox Code Playgroud)

不要这样做.当时看看谁做出改变似乎很有价值,但随着时间的推移,它确实没有任何价值,也使代码混乱.