我仍然試圖圍繞着OOP Ruby的頭部。假設我正在嘗試創建一個簡單的Hangman遊戲,並且我想從文本文件中選擇一個隨機單詞。到目前爲止,我在代碼塊中有2個例子。第一個示例顯示了Word和Game類,其中Word類生成隨機單詞,Game類在initialize方法中調用Word類。第二個例子只有一個Game類,Game類自己生成隨機單詞。我的問題是,遊戲類負責生成隨機詞還是使用Word類?紅寶石OOP類職責
# First Example
module Hangman
class Word
def self.words
File.readlines("../words.txt")
end
def self.random
words.select { |word| word.length > 4 && word.length < 13 }.sample
end
end
class Game
attr_reader :random_word
def initialize
@random_word = Hangman::Word.random
end
end
end
# Second Example
module Hangman
class Game
attr_reader :words, :random_word
def initialize
@words = File.readlines("../words.txt")
@random_word = @words.select { |word| word.length > 4 && word.length < 13 }.sample
end
end
end
一個很好的文章https://atomicobject.com/resources/oo-programming/oo-quality –
太好了,謝謝您的答覆的長度。我會繼續前進,並保留Word課程。更有意義。 – mmcdevi1