【发布时间】:2012-01-13 12:51:55
【问题描述】:
我目前正在编写一些包含常用帮助类的通用 .net 库。 比如处理字符串加密/解密、保存到配置文件等...
现在,我是我所在公司的唯一开发人员,而且看起来不会很快改变:所以我不会“窃取”任何人的代码。 不过,我很可能会在某个时候离开公司。
与大多数开发人员一样,我很可能希望在我的新公司中重用这些随着时间推移而构建的库,因为它们包含与公司无关的代码。
如果我以当前公司的名字命名它们,我将需要更改命名空间并重新编译所有新库,如果它们的数量很大,这可能会非常耗时且容易出错。
我还想将这些库用于一些个人项目,并在我的业余时间扩展它们并从事这些项目。
虽然以我的名字命名它们似乎非常以自我为中心。如果我加入了一家新公司,我想我不希望在几乎所有的代码文件中都有之前开发者的名字。
另一方面,像“Common.Library”这样的东西似乎有点太笼统了。
我想知道你们开发人员相对经常更换公司是如何解决这个问题的? 作为唯一的开发人员,我在代码设计决策方面非常灵活,但我仍然希望尊重最佳实践并为我的继任者提供体面的代码库。
PS:我已经和我的老板核实了 IP,只要我重用的代码不包含业务逻辑,他们不介意,所以请保持 cmets/answers 技术性而非合法性。
【问题讨论】:
-
如果没有 IP 问题,那么您可以随意称呼他们。
-
确实,但我觉得我也应该从可能会来找我的人的角度考虑事情......众所周知,当我们在一家新公司开始并且必须接管一个现有的代码库,有各种各样的事情可以让我们无休止,我更愿意尝试成为一个好公民。
-
还是没关系的。必须有一个命名空间,对于追随你的人来说,这只是他们必须学习的另一件事。 什么命名空间的区别很小。
-
不要浪费太多时间为此绞尽脑汁。将其命名为您想要的任何名称并完成它。比选择完美名称更重要的是choosing a reasonably short name。命名空间的主要目的是提供唯一性,以防止您的代码与其他代码发生冲突。
标签: .net namespaces naming-conventions