我正在制作一个非常大的网络应用程序(目前有70个项目和150k loc,但还有很多工作要做)。
我使用FinalBuilder来运行构建脚本。但是,构建这样一个大型项目的最佳实践是什么?那么构建依赖呢?我的项目结构对代码的性能(如果有的话)有什么影响?
我已经看到过一些关于此的线索,但我找不到这些。我已经看到解决方案中超过600个项目的解决方案的线程,为了明确的答案,让我们想象这个系统将增长到那个大小(我想知道如何组织一个比我最终的项目更大的项目,因为这意味着我可以组织一个较小的解决方案。)
如果重要,系统主要使用.NET 3.5(C#,LINQ,SQL Server等),但也会使用Python / Erlang。
答案 0 :(得分:3)
我只有40个项目(但数百万个项目),我们的主要最佳实践是:
那样:
这个想法是:
主要最佳实践:
如果您自己的项目与其他项目的交付一起工作(而不是在本地重建其他项目),则很有可能在软件生产周期的后续步骤中工作(测试,预生产) ,生产)
答案 1 :(得分:2)
您是否考虑过使用NMaven并将70个项目中的每个项目作为模块?这将允许您控制单个模块的构建,打包,版本控制和发布以及整个父项目。它还可以帮助您解决不同模块,外部库甚至版本和不同生命周期范围之间的依赖关系(例如,您在测试生命周期中只需要NUnit,但不需要在构建中将其打包)。 / p>
这可能有助于更详细地解释这些项目的外观以及它们如何相互依赖。
答案 2 :(得分:1)
有点开放作为一个问题。让我们从一个基本结构开始,我建议作为我的客户的起点,在我的分支机构内
然后来源以
组织