我多年来一直在使用Delphi,我的每个项目都是从源代码编译到exe - 没有包等.如果在任何地方使用'MyUnitA.pas',它只是在另一个单元的接口或实现部分声明需要它.这一切都可以在任何地方工作,这意味着在我的项目源(dpr)中只有框架定义(在框架列表中没有出现的其他地方似乎需要)和必须调用的单元的"奇怪"定义非常早,例如madExcept,FastMM等.
我注意到XE有时会在dpr中解析东西,直到你真正编译它为止.此外,在处理包时,如果必须在没有明确添加到包中的情况下隐式提取内容,则会发出警告.这让我想知道我们是否应该努力将所有使用过的单元添加到我们的dpr(如包定义)或右键单击项目和'添加到项目'.你是做什么?
我个人的搜索路径是空白的,并包含我的.dpr文件中的所有单位.我认为这样做的主要优点是:
我认为这种方法没有任何明显的缺点.是的,当你包含一个新的第三方组件时,你必须将文件添加到.dpr文件中,但根据我的经验,这种情况并不常发生,因为它会成为一个很大的负担.
小智 5
(在Delphi Xe3 Enterprise上进行测试)
1 000 000线项目,1000个类,300个单元