【问题标题】:Should I elide inner or outer parentheses in Ruby? [closed]我应该在 Ruby 中省略内括号还是外括号? [关闭]
【发布时间】:2016-01-25 16:29:20
【问题描述】:

在 Ruby 中,是否有优先选择要省略的括号级别,还是取决于情况(在这种情况下,应遵循哪些准则)?来源表示赞赏。

例如,要么是

do_something do_something_else(...)

do_something(do_something_else ...)

比别人好?

【问题讨论】:

    标签: ruby syntax coding-style


    【解决方案1】:

    您需要一个规则来决定何时省略括号,何时不省略。那应该基于方法。 (根据上下文建立规则很麻烦,即总是省略最里面的括号,或者总是省略最外面的括号等等。)

    还有一些方法通常只在最外层使用(即,不成为另一个方法调用的参数),而不是只出现在最内层的没有/很少的方法。前者的典型例子是 DSL 方法(像putsp 等传统上不带括号使用的方法可以认为是 Ruby 本身提供的 DSL 的一部分)。

    一旦您决定将规则建立在方法是什么的基础上,那么您自然会省略出现在特定方法中的最外层括号。

    【讨论】:

    • 你有消息来源吗,只是出于好奇?
    【解决方案2】:

    这是一个主要基于意见的问题,但当出现与风格相关的问题时,Ruby Style Guide 是一个很好的(最好的?)参考。

    【讨论】:

    • 我在样式指南中找不到答案...我错过了什么吗?
    【解决方案3】:

    假设它应该与测试中的assertlooking at way asserts are used in Rails tests 的其余部分一致(即没有括号),它将易于使用

    assert method(param1, param2, etc)
    

    【讨论】:

    • assert 只是一个例子。我会澄清这个问题。
    • @BalinKingOfMoria 相同的约定也可以用于其他功能,因为样式指南没有关于此问题的任何特定指南。
    • 你有来源吗?
    • @BalinKingOfMoria 哪个来源?答案中的链接会将您带到 Rails Github 搜索。
    • 我的意思是比 Rails 测试更通用的来源。很抱歉没有澄清。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-12-22
    • 2020-11-17
    • 1970-01-01
    • 2015-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多