在Ruby中包含文件的问题

3
  • 我对Ruby非常陌生,你能否给出最佳实践来分离文件并包含它们。
  • 文件布局的首选设计结构是什么?何时决定将算法分离到新文件中?
  • 何时使用load来包含其他文件,何时使用require
  • 当包含文件时是否会有性能损失?

谢谢。

1个回答

6
  • 我每个类都会创建一个文件,除了那些小的助手类,它们不需要其他文件。我还会将不同的模块分别放在子目录中。

  • loadrequire 的区别在于,require 只会加载一次文件,即使被多次调用,而 load 则无论之前是否已经加载过都会再次加载。你几乎总是要使用 require,除非在 irb 中,当你想要手动重新加载文件时才使用 load

  • 我不确定性能损失如何。当你 loadrequire 一个文件时,解释器必须解释该文件。大多数 Ruby 会在被 require 后将其编译为虚拟机代码。显然,require 在文件可能已经被包含一次时更具有性能优势,因为它可能不需要再次加载它。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接