如何使这个简单的方法更短?

Hub*_*iak -1 ruby ruby-on-rails

我的应用程序中有非常简单的方法.我想知道是否有办法让它更短.

def is_enough_words_to_play_game?
    if Word.verified.size > 5
        true
    else
        false
    end
end
Run Code Online (Sandbox Code Playgroud)

spi*_*ann 5

你可以写:

def is_enough_words_to_play_game?
  Word.verified.size > 5
end
Run Code Online (Sandbox Code Playgroud)

因为Word.verified.size > 5返回已经是布尔值.

或恕我直言更可读:

MIN_WORDS_FOR_GAME = 6

def enough_words?
  Word.verified.size >= MIN_WORDS_FOR_GAME
end
Run Code Online (Sandbox Code Playgroud)

  • @HubertJakubiak这是*确切*如何在Ruby中定义干净,简单且易于理解的方法.我唯一关心的是魔法数字"5",它应该是某种某种常数,所以它的含义是清楚的. (3认同)