哪种方法更适合调试/分析 - .DLL或源代码?

时间:2010-10-26 21:27:55

标签: c# .net visual-studio dll code-analysis

我正在开发一个应用程序,我需要对不同方面进行测量,即每种方法花费的时间和系统资源的压力,以及偶尔进行一些调试以监控数据的处理方式。

我将an open source library用于可用作源代码的MIDI文件以及编译的.DLL。

我在想是否更容易使用已编译的.DLL,因为我不会对库进行任何更改,而且看起来比在源窗口中有一个巨大的参考项目更“整洁”但是我不是确定在调试和测量代码性能时是否会产生任何影响。

如果已经提出这个问题,我会道歉,我尝试了搜索,似乎没有任何看似相关的内容。

2 个答案:

答案 0 :(得分:2)

这完全取决于你是否认为你必须根本调试它。性能测量不是问题。

另请注意,您可以获取该源代码,在本地计算机上构建它并引用dll(并将pdb文件放在同一目录中)。然后你就可以调试它而不用实际将项目添加到你的解决方案中。如果你有这三件事,这总是可能的:

  1. dlls
  2. 构建dll时创建的PDB
  3. 用于构建dll的源代码
  4. 但是,再一次。如果您认为不必调试,只需立即使用dll即可。您可以随时获取源并重建。

答案 1 :(得分:1)

如果我有源代码,我发现更容易跟踪,因为我可以看到为什么某些东西不起作用。另外,我不确定性能计数器是否可以插入已编译的dll中(但我可能错了)。

但是,如果您不打算更改它,并且您不需要了解其内部工作原理,那么只需使用该DLL即可。如果你不需要它们而只是想使用dll,我当然可以看到不想附加所有这些代码行的观点。

我知道下一部分与易于调试无关,但它与易于维护有关。

当我可以获得实际代码时,我也不喜欢源代码控制中的dll,特别是对于可能会发生变化的外部库。我不能告诉你为了升级组件或对我的代码进行重大更改我需要支付多少次因为需要更新的东西。