题
- 我对 Ruby 很陌生,所以您能否建议分离文件并包含它们的最佳实践。
- 文件布局的首选设计结构是什么?您什么时候决定将算法分离到一个新文件中?
- 你什么时候使用 加载 包含其他文件以及何时使用 要求?
- 当包含文件时,性能是否会受到影响?
谢谢。
解决方案
我为每个类创建一个文件,但其他文件不需要的小型辅助类除外。我还将不同的模块分隔在子目录中。
和...之间的不同
load
和require
是require
即使被多次调用,也只会加载文件一次,而load
无论之前是否加载过,都会再次加载。你几乎总是想使用require
, ,除了也许在irb
当您想要手动重新加载文件时。我不确定性能是否受到影响。当你
load
或者require
一个文件,解释器必须解释该文件。大多数 Ruby 会在需要时将其编译为虚拟机代码。明显地,require
当文件可能已经被包含一次时,性能会更高,因为它可能不需要再次加载它。
不隶属于 StackOverflow