是否有所作为,如果我收拾我的使用条款,删除的单位在其他单位仍在使用?

StackOverflow https://stackoverflow.com/questions/763862

  •  11-09-2019
  •  | 
  •  

我个人喜欢它,如果我uses条款是尽可能小,但在许多应用中,真正的大单位(以腹胀可执行的条款),如FormsVirtualTrees需要,无论如何,至少另一个单元。

所以:是否有所作为,如果清洁我uses条款即使最后没有单位从项目中删除?如果真是这样,那么是以哪种方式?和:是清洁uses条款一些东西,应尽快完成地,也可以等待,直到我偶然发现一个未使用的单位?

有帮助吗?

解决方案

如果它在项目的其他地方使用,它不会有太大的差别,只是生产更清洁的代码更容易阅读。有一些小事情就可能会影响,虽然。

编译顺序:编译器决定什么样的顺序来编译单元基于哪个单位使用哪个单位。如果从早期单元的使用条款中删除一个单元,这可能会导致使用单位在编译循环后进行编译。这可能听起来不是很多,但请记住,初始化部分以相同的顺序运行的单位进行了汇编。这实在不应该有太大的差异,以你的项目,虽然。

CodeInsight:当你打开代码完成下拉,它将提供基于当前可用的所有单位的选择。您可以减少选择的数量它有过滤通过 - 并因此花费的时间拉血腥的东西了金额 - 通过减少你使用的单位数! (不,我不苦,你为什么这么问?)

其他提示

一般无。如果一个单位被使用一次,在任何地方项目,不要紧它多少次使用。反过来说,不要紧,你有多少地方删除单元从它是否仍然是至少使用一次的地方。编译后的程序的行为是相同的,并且它将具有大致相同的尺寸。

在唯一的区别是在单元的初始化和结束部分的顺序。单元的使用顺序将影响那些段被执行的顺序,但确切效果从未记载(所以尽量不依赖于初始化顺序)。

但我还是鼓励你清理你的单位名单,包括了我们鼓励你来清理你的变量列表和您的参数列表一样的道理。当你摆脱你不需要的东东,它可以更容易阅读,你已经把代码,因为你可以有理由相信,你正在阅读给出的代码做什么准确的图像。如果你的代码中提到了一堆单位,但从来没有真正利用它们,那么下次你或别人看代码,还有你要花费一些时间,试图找到一个很好的变化在您的代码使用设施这些单位。 (你对自己说,“嗯,这个代码包括Graphics,但我不能看到它绘制任何东西。我还是再看看,因为我没想到这代码有那方面的责任。哎,同事 - 你能花一些时间你一天的告诉我在哪里,这个单位绘制的东西“)

是的,有一招经常被忽视,可以来咬你在后面:点击 如果有一些的初始化/最终确定的代码,它的总是执行即使没有代码,否则叫你单位(和单元总是包括当你想会不会)。因此,删除您不需要在你的项目可以使一个显着的区别的单位。

值得注意的另一件事是,的的单元的顺序确定哪些标识符编译器拾取取值当存在的同音在2个不同的单元,并调用它们不与前缀单位名称(你总是应该作为最佳实践)。

除此之外,如Mason和罗布指出,单元命令影响它们被编译的顺序和初始化/最终确定的序列。

对于代码的洞察力,这将是更快,如果你删除不必要的单位,也是全球范围内,如果在项目中使用的所有单位都明确添加到DPR,而不是依赖搜索路径上找到他们时,他们是隐含通过另一个单元中加入。

我stronlgy与梅森和Rob不同意:它确实有所作为

依赖减少。

所不同的是不是在当前项目作为由Mason和罗布说明。相反,不同的是在你的下一个项目。如果你保持不必要的(服务器)单位的(客户端)单元,然后用另一个项目客户端设备将在依赖拉为好。如果对于刚刚被拉进单位没有其他正当客户单位,那么你已经加入膨胀。

使用免费帕斯卡尔分析,找出未使用的单位代码。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top