3
  • 我对 Ruby 很陌生,所以您能否建议分离文件并包含它们的最佳实践。
  • 文件布局的首选设计结构是什么。您什么时候决定将算法分离到一个新文件中?
  • 什么时候使用load来包含其他文件,什么时候使用require
  • 包含文件时是否会影响性能?

谢谢。

4

1 回答 1

6
  • 我为每个类创建一个文件,除了那些是小型帮助类的类,其他文件不需要。我也在子目录中分离了我的不同模块。

  • loadrequireis之间的区别require只会加载文件一次,即使它被多次调用,whileload会再次加载它,无论之前是否加载过。您几乎总是想使用require,除非irb您想手动重新加载文件。

  • 我不确定性能是否受到影响。当你load还是require一个文件时,解释器必须解释这个文件。大多数 Ruby 会在需要后将其编译为虚拟机代码。显然,require当文件可能已经被包含一次时,它的性能更高,因为它可能不必再次加载它。

于 2009-04-30T02:35:11.403 回答