ruby - 在 Ruby 中使用 require 的最佳实践是什么?

标签 ruby dependencies require

某些模型需要先加载其他模型。但是每个需要的文件只需要加载一次。

管理此问题的最佳方法是什么?将所有 require 行放在一个文件中(如 init.rb),还是将 require 文件放在每个模型文件的顶部?

最佳答案

让我们评估每个选项:

  1. Put all the require lines in a file (like init.rb)

    这意味着每个单独的文件将不那么困惑,因为 require 将全部放在一个地方。但是,它们的写入顺序可能很重要,因此您最终会在此文件中手动有效地进行依赖项解析。

  2. require files at the top of each model file

    每个文件都会有更多的内容,但您不必担心排序问题,因为每个文件都明确要求其所需的依赖项。多次为同一个文件调用 require 没有任何效果。

    这也意味着您可以只需要部分代码,这对库很有用;例如require active_support/core_ext/date/calculations 仅获取外部应用所需的库部分。

两者之中,我会选择第二个。它更简洁,需要更少的思考,并使您的代码更加模块化。

关于ruby - 在 Ruby 中使用 require 的最佳实践是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13003662/

相关文章:

ruby - f.gets.chomp 在做什么? (艰难地学习 Ruby : Exercise 20)

ruby - 与 ruby​​ 实时通信

ruby - 为什么给时间加上一天会改变秒的小数部分?

eclipse - 为什么 CDT 在 Ant 上重建我的 C 项目并在不相关的项目中构建?

node.js - 相当于 `var x = require("somemod")();` 的 TypeScript 是什么

angular2 找不到名称要求

ruby - 嵌套液体自定义标签 block

Android 依赖项 com.google.firebase :firebase-core different version for the compile (12. 0.1) 和运行时 (11.4.2)

c# - 当 assembly.GetReferencedAssemblies 返回 ".exe"依赖项时怎么办?

ruby - require File.expand_path(..., __FILE__) 是最佳实践吗?