VS.NET:项目参考与大会参考

Cor*_*gan 10 .net assemblies reference project visual-studio

这里有一些争论,哪个更适合从其他项目引用我们的公共代码库:通过项目或汇编.我赞成引用该项目,特别是因为我们有自动化的单元测试,证明公共代码能够满足它的需要.

另一个阵营的想法是锁定那些项目,每月只发布一次或类似的东西.然后强制所有项目引用程序集.他们认为这将保护他们免于部署未经测试的代码.他们"太忙"无法编写自动化单元测试并将其项目配置为持续集成,我对此没有任何影响,所以请不要关注这方面.

这就是我能想到为什么项目参考是更好的解决方案的原因.我也在寻找其他意见.

优点:

  • 引用项目可确保您使用最新代码.你不必等待任何事情.
  • 减少重复.没有最新的代码,重新发明轮子的可能性更大.
  • 如果开发人员需要某些东西并且无法将其添加到它所属的程序集中,那么它将在任何可行的位置创建,从而产生许多不一致和代码重复.
  • 开发更容易,因为您可以轻松查看/调试引用代码中发生的情况.
  • 我们常见的东西并没有经常改变,但是当它发生时,它通常是有用的东西.为什么要增加额外的维护和汇编发布管理负担.

缺点:

  • 可能需要更长时间才能加载.
  • 将项目添加到新解决方案然后添加程序集引用可能需要稍长时间.

Jar*_*Par 5

这里有一些你错过的专业人士

  • 实时更新:当您更改API时,intellisense等功能将在项目与项目引用之间自动更新
  • GoTo定义:如果您有一个程序集引用,GoTo Definition将带您进入实际的代码定义.使用程序集引用,它将带您到生成的元数据签名.
  • 查找所有引用:将处理项目引用中的所有代码以使用引用.对于装配参考,您只能看到元数据中的用途
  • 快速搜索(仅限2010年):与查找所有引用类似,在P2P参考中效果更好

回应你的缺点

  • 是的:加载项目通常比加载参考更慢.虽然这个时间差异不大并且不应影响您的日常开发例程,但项目数量合理
  • 是:添加项目到解决方案通常比添加引用更慢.但差异在几秒钟内,是一次性成本.我认为将此视为标准的一部分是错误的.

  • 我可能错了,但在我看来,添加一个项目不是一次性成本.每个附加项目都会增加整个解决方案的编译时间. (4认同)