需要Ruby宝石中的订单



我正在用新功能更新的Ruby gem名为politicosbr,它依赖于其他四个Ruby gem,并在其主模块中需要它们。

require 'open-uri'
require 'nokogiri'
require 'httparty'
require 'roo-xls'

但它也需要一些内部文件:

require 'politicosbr/constantes'
require 'politicosbr/estaduais'
require 'politicosbr/vereadores'

这可能只是一个风格问题,但无论如何,我想知道在这种情况下,是否有关于需求顺序的Ruby约定。

换句话说,我应该先要求内部文件,还是先要求其他gem,或者这根本不重要?

您应该在内部文件之前要求外部文件,因为外部文件不应该依赖于您的文件,但您的内部文件依赖于外部文件。

例如,假设一个外部文件将类A定义为B的子类,并且您在文件中使用类B。如果你只是(像往常一样)在你的内部文件中做:

class B
  ...
end

则其将创建类CCD_ 4作为CCD_。如果稍后包含将B定义为A的子类的文件,那么在这一点上将存在矛盾。

最新更新