在工作中,我们有一个包含多个子应用程序的非常大的应用程序。 (500 + dlls)
作为一名开发人员,使用所有这些dll和依赖项非常令人沮丧。您创建一个新项目并添加5个以上的dll以使系统的核心部分工作(日志记录,审计,安全性,消息传递等)。我们添加的每个新子应用程序,我们创建一个Web项目,一个业务层,一个数据层以及在3之间共享对象所需的任何其他项目,因此我们的列表不断扩展。
我的问题是管理这个的最佳方法是什么?我似乎无法想到什么是最好的..模块化方法似乎有利于重新使用,并且热修补项目而不需要为一个应用程序取下系统。但是管理500个dll的头痛是一场噩梦。
每个子系统真的需要3-4个项目,并参考其他5个核心部分吗?
管理大型项目还有哪些其他方法可以保持管理/开发和部署?
答案 0 :(得分:1)
我在所有类型的项目中都有很好的命名准则(目前我在250多个dll项目上工作)。 如果您(或其他任何人)选择了良好的命名约定,您首先会看到“它”是什么,并且您知道命名是您需要的。
不要担心项目中的引用计数。如果您对每次添加X引用感到沮丧,您可以创建一个宏来代替您。或者您可以根据您的特殊要求创建模板VS解决方案/项目/项目(文件)。
大项目很大,所以如果你必须使用大量的dll,课程等,这并不奇怪......
答案 1 :(得分:-1)
这是一场持续的战斗。我们的系统有大约100个不同的项目:主要是C#,有一些C ++项目用于低级别的东西。如果我们添加一个新的C#项目,我们必须添加对其他六个项目的引用,以获得基本功能。
在您的示例中,您说为每个子应用程序创建三个或更多项目(Web项目,业务层,数据层等)虽然我们创建了这些层,但我们尽可能地将它们保持在同一层中项目,专门为避免添加不必要的项目。我们不会将子应用程序分解为不同的项目,除非它将分布在多个进程中,或者如果我们知道整个系统的其他部分需要与该子系统进行通信。
每个子系统确实需要引用核心部分。它是否需要3-4个项目取决于你如何构建它。我们发现,将新项目创建限制为与其他项目通信或由多个子系统使用的部分,大大减少了我们必须应对的项目数量。