【问题标题】:Why is it "wrong to require rubygems"?为什么“要求 ruby​​gems 是错误的”?
【发布时间】:2010-11-28 21:18:49
【问题描述】:

根据this post,要求 ruby​​gems 是一种反模式。

require 'rubygems'

这个论点似乎可以归结为:

当我使用你的库时,部署你的 应用程序,或运行我可能不想要的测试 使用红宝石。当您需要 'rubygems' 在你的代码中,你删除我的 做出该决定的能力。一世 不能不需要 ruby​​gems,但你可以 一开始就不需要它。

但是当您创建并与其他人共享代码库时,对于您“需要”的任何 Ruby 库,难道不能提出相同的论点吗?

【问题讨论】:

    标签: ruby rubygems anti-patterns


    【解决方案1】:

    如果你看cmets,你会看到作者这样说

    我没有试图说明的重点是 那个 ruby​​gems 是坏的或者那个人 不应该使用它。我使用红宝石和 认为这是 Ruby 的关键部分 成功——我只是没有电话线 “需要'rubygems'”在我的任何地方 库的源代码,因为它不是 必要或方便,并使其 其他人很难/不可能 环境(如 bundler、rip、GAE、 debian、手卷等)使用 没有 ruby​​gems 的库,即 通常很重要。

    在我读之前我真的不同意他,现在我同意了

    【讨论】:

      【解决方案2】:

      需要 ruby​​gems 的主要问题是它会在没有安装 ruby​​gems 的系统上导致错误,即使它们确实具有您实际需要的库。

      有些人在需要 ruby​​gems 时通过挽救 LoadError 来解决这个问题,但这有点难看。

      【讨论】:

        【解决方案3】:

        Rubygems 对应用程序来说不是必需的,它只是提供库的一种便捷方式。相比之下,使用的其他库对于应用程序来说是必不可少的。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2012-02-19
          • 1970-01-01
          • 2011-08-05
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-09-06
          • 1970-01-01
          相关资源
          最近更新 更多