我们有一个大型(约580,000 loc)应用程序,它在Delphi 2006中构建(在我的机器上)大约20秒。当你有几秒钟的构建时间时,你倾向于使用编译器作为工具。即编写一些代码,构建,编写更多代码并构建更多代码等等。当我们将一些东西移到C#时,是否有人比较了这个大小需要多长时间才能构建?我目前只有小应用程序和组件,因此无法真正比较。如果事情需要花费更长的时间来构建,那么我可能需要改变我的风格!或者我的风格是懒惰的?
例如,如果我正在更改方法调用的接口,而不是对所有应用程序进行完全搜索以找出我需要对调用进行更改的位置,我将使用编译器来查找它们我
答案 0 :(得分:2)
Visual Studio 2008 SP1现在有C#的后台编译(它总是用于VB.NET)。回到我的VB时代,我经常使用它来通过更改名称来查找引用的位置,然后查看后台编译器说出错误的位置。
我从来没有做过这么大的事情。在我上一份工作中,我们在大约15个项目中分布了大约60,000个loc,编译时间大约需要10秒。也许其他人可以发布一个稍大的案例研究
答案 1 :(得分:2)
我曾经按照你的描述使用编译器,但是因为我一直在使用ReSharper,所以我做的更少了。 此外,对于像重命名这样的东西,重构支持(在Visual Studio 2005中向上,甚至更好,来自ReSharper)意味着我不必进行搜索+替换来重命名。
答案 2 :(得分:1)
你可以利用的一件事,特别是桌面应用程序,正如我想象你正在处理来自Delphi,是编辑和继续。这使您可以在调试模式下运行时更改实际代码。您可以更改任何内容,除了添加类级别变量,方法或新类,并且仍然可以继续运行而无需重新编译项目。
答案 3 :(得分:1)
我只使用“语法检查”来查看我是否忘记了代码上的一些错误...这些都大大减少了,因为我是GExperts插件的“代码校对员”。
答案 4 :(得分:0)
好吧,编译器不必那么快就可以利用它。某些IDE支持对每个文件保存进行渐进式编译,或者即时进行。这很有效。
答案 5 :(得分:0)
您可以在多个项目中拆分应用程序(通过图层和/或模块和/或其他等...),您将只编译项目,您在哪里实际工作。
答案 6 :(得分:0)
你帖子的最后一部分让我害怕。我不熟悉其他IDE,但MSDev允许您查找对方法的所有引用 - 因此您不必编译只是为了找到您破坏的所有方法调用。
使用任何有用的东西,但你很乐意接受新的做事方式。