何时启动新解决方案或何时仅将新项目添加到现有解决方案的准则

时间:2014-03-05 00:12:17

标签: visual-studio

在Visual Studio中,新项目何时属于当前正在处理的解决方案,何时应将项目移动到自己的解决方案中?大型解决方案与小型解决方案的优缺点是什么?在做出这个决定时我应该考虑什么?我们选择的项目方法是否与方法有关?这只是个人偏好吗?

例如,我们正在为我们的客户构建一个新产品,它包含一个Silverlight应用程序,一个ASP.NET MVC报告控制台和一个ASP.NET MVC管理控制台,它们都与现有的客户端数据数据库相连和一个新的共享应用程序数据库目前,参与的Visual Studio解决方案包括所有内容 - Silverlight项目,报告网站项目,管理员网站项目和两个WCF服务应用程序,用于对每个数据库进行数据访问。是否应将其中的任何一部分拆分为各自的解决方案?

我希望我能以一种有意义的方式表达这个问题。我对我的思考过程应该是什么感到困惑。

2 个答案:

答案 0 :(得分:2)

考虑:

  • 依赖关系 - 如果项目彼此依赖,那么将它们放在同一个解决方案中可以帮助确保变更扩散到依赖项目。
  • 性能 - 我有许多项目由许多项目组成,而且整个解决方案加载和构建需要很长时间。
  • 便利性 - 显然,在一个解决方案中使用所有项目比在多个打开的项目中导航更方便。与此同时,多个项目可能会使解决方案资源管理器变得混乱。

其他想法:

  • 如果您需要并行调试两个项目,例如客户端/服务器对,那么两个解决方案允许您在Visual Studio的不同实例中进行调试。
  • 请考虑您的项目可能会独立于您的解决方案而更改。例如,更改项目名称可能意味着必须更新多个解决方案和参考。

但我不认为这只是个人偏好。根据内容的不同,可能会采取一些重大差异。

我错过了其他任何考虑因素?

以下是来自MSDN的good resource,讨论了构建项目和解决方案的推荐方法。值得一读。

答案 1 :(得分:1)

当解决方案包含不同的责任范围时,我会说要拆分它们。文档管理系统中的示例由一个部门处理,但安全性由另一个部门控制。此外,处理解决方案的人数应与解决方案的大小保持一致。让太多人在单一解决方案上工作可能很难。最后,我想说当你想与其他项目或解决方案共享功能时,我会将其分解为自己的解决方案。