我们应该在源代码中保留联系方式吗?


15

我通常会出于礼貌保留我的电子邮件地址,以防以后有人问我有关此问题的信息。别人留下的信息多还是少吗?有人留下电话号码吗?


7
****** No. ******
乔尔·埃瑟顿

1
@Joel-****************************************我记得我发布给世界的一些代码,我宁愿忘记它,也不想被某人从现在起十年后想起问我WTF!= P
jmq 2011年

Answers:


28

我几乎永远不会留下自己的名字或电子邮件地址:

  • 它倾向于被复制粘贴(是的,不好的做法);最后我得到了有人联系我索取我未编写的代码
  • 修改代码后,联系信息不会被删除或更新;最后,我和别人联系,询问代码发生了很大变化,我什至都不认识。

相反,我更喜欢将人们指向代码存储库(SVN,Git等):在这里,他们可以拥有完整的历史记录-找出谁编写/修改了他们有疑问的部分。


6

我习惯于将我的名字或缩写写在评论标题中,并带有修订号和更改的简短描述。

我最近已经摆脱了这种习惯,因为这对于版本控制是多余的,例如,任何对谁进行了更改感兴趣的人都可以在版本控制中看到源代码的整个历史。


啊哈!是时候向NetBeans抱怨其默认模板了。
Gio Borje 2011年

5

如果您是专业开发软件,则很可能正在使用某些版本控制系统(svn,hg,git等)。在这种情况下,我发现将您的个人信息留在代码中是多余的,因为您已经拥有一个编码器帐户(具有该信息)可以在项目上提交代码。

但是,来自开源社区的一些人发现留下姓名和电子邮件地址进行联系很有趣。这根本不是一个坏主意。检查以下示例:

从FFmpeg:

/*
 * Interplay C93 video decoder
 * Copyright (c) 2007 Anssi Hannula <anssi.hannula@gmail.com>
 *
 * This file is part of FFmpeg.
 */

从DirectFB:

/*
   (c) Copyright 2001-2009  The world wide DirectFB Open Source Community (directfb.org)
   (c) Copyright 2000-2004  Convergence (integrated media) GmbH

   All rights reserved.

   Written by Denis Oliver Kropp <dok@directfb.org>,
              Andreas Hundt <andi@fischlustig.de>,
              Sven Neumann <neo@directfb.org>,
              Ville Syrjälä <syrjala@sci.fi> and
              Claudio Ciccani <klan@users.sf.net>.
*/

3

但是肯定留下我的名字和/或电子邮件将意味着我应该在代码中写注释?对不起不是答案。实际上,我通常会留下doctype注释...

/**
* @author PurplePilot
* @package
* @etc
*/

用我的名字,而不是电子邮件地址。是的,可以剪切和粘贴此代码,但是如果复印机不更改作者姓名,他们将不会更改其他任何内容,并且很明显,这是无需维护的注释。

我有不时使用的电子邮件签名

/* Anything you put in comments is not tested and easily goes out of date. */

这似乎是该线程中许多其他帖子的大致反映。但是,由于没有关于该主题的规则,因此程序员需要做他们认为最适合的事情。


嗯...什么?我认为这应该是评论。
亚当李尔

2
@Anna-Err ....我认为这应该是个玩笑。
ocodo 2011年

@Slomojo是的,我明白了。尽管如此,仍然认为它更适合作为评论。很可爱,但是没有答案。
亚当李尔

@Anna,哦,我知道了,但是当我阅读它时,它可以作为对问题的答案。
ocodo 2011年

2

我经常将自己的姓名缩写留在评论中(在适当的地方),但我看不出有任何理由要留下更多。如果我仍在拥有代码的公司里工作,人们应该知道如何与我联系。

如果我离开了公司并在其他地方工作,那么如果我在上一家公司(可能成为竞争对手!)打电话询问有关软件的问题,那对我的新雇主来说是不公平的。

如果代码是通过其他方式共享的(例如,开源,在线发布),则可能值得您提供详细的联系方式,但是如果代码是通过其他方式传递的,那么您给它的人可能已经拥有了您的联系方式。联系方式,您是否真的想要一个随机的陌生人打电话询问您几年前编写的代码?


是的,在一家有意义的公司内部。我更多地考虑将代码发布到公共领域。

1
对于公开发布的代码,我可能会在标题中输入我的姓名/ URL /电子邮件。我可能会使用唯一的电子邮件别名,因此如果由于在网上公开发布而最终被垃圾邮件过滤,则可以过滤/阻止邮件。
Danny Tuppeny 2011年

2

有一条思路说:不要在源代码控件中放入源代码。

作者信息是其中之一,因为随着时间的流逝,许多人将以不到文件的粒度修改代码。责任日志应该告诉您所有您需要了解的内容。

话虽如此,许多公司都遵循列出原始文件作者而不更改它的过渡。我不知道这是否真的有用(随着人们离开公司)。

我怀疑主要的价值是建立意识。您不会去要求IDE告诉您所看到的每个文件的作者,但是随着时间的推移,在小组代码库中遇到这些文件,您便会了解项目的职责和专业知识。

对于公共领域-好处是“广告”,缺点是将来有人可能会破坏您的文件,但仍会使用您的名字。


2

经过三十年的编程,维护和转换软件,我可以肯定地说源代码中的作者信息毫无价值。

我从来没有用过。无法信任。公司仍然没有人雇用。一半的名字是承包商。


2

我永远不会在代码中留下我的联系方式。它总是过时,似乎会导致更多问题,然后解决。

其他人指出了很多问题,但是我想提到一个我认为是最隐患的问题。

它会破坏团队工作和代码质量。

您可能会问,这与集体代码所有权有关。如果您输入代码名称,那么下一个进来的人会说“那不是我的代码,我只会输入X”,其中X可以对其进行破解,忽略,等等。然后,如果他们进行了修复,他们当然要在代码上加上他们的名字,因为他们改进了它。但是您可能会想,嘿,我花了数周的时间编写此代码,而他们却花了10分钟的时间,才知道自己的名字正确无误。随着时间的流逝,这种循环继续进行,人们争论着谁应该为代码赢得称赞(或指责)。

对于团队来说,这并不是很好。相反,如果团队专注于集体所有权,并在没有所有权的情况下完善所有代码,则可以专注于真正重要的是系统的质量。如果确实需要跟踪谁进行过处理,则可以始终使用VCS来获取详细信息。

注意:如果版权标头具有开发人员的名称,即使版权标头也可能具有破坏性的影响,尤其是在开发人员不如其他贡献者那么活跃的情况下。这就是为什么在开放源代码项目中,我尝试仅在项目的某个位置提到AUTHORS中的作者或贡献者文件。


1
我认为您的问题更多地是由缺乏思想的同事引起的,而不是评论本身。
杰伊

很好的答案,一些开源项目甚至禁止在文件中写入作者信息,因为这破坏了集体代码的所有权。
艾蒂安

1

我不会将联系信息留在源代码中,因为我的VCS会为我负责。

也就是说,建议将您的联系信息放在某处,以便使用该代码的人可以直接与您联系以提供反馈。在README文件中链接到项目网站通常是一个好习惯。

该约定来自定期使用Usenet和IRC共享源代码的时代。由于代码很少是从VCS链接到的,而是经常直接发送的,因此,如果需要反馈,就必须在某些地方包含联系信息。


1

我将名字留在SQL脚本中,因为它们通常直接从数据库而不是从源代码控制中获取。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.