将类结构添加到基本Ruby代码

时间:2013-12-13 21:34:09

标签: ruby class oop object

这很疯狂,我觉得这很愚蠢。但我在Ruby中有一个基本代码,它由

组成

  1. 分配给值的用户输入
  2. 按行提取到数组的输入
  3. 每行提取特定文本和特定数字的迭代
  4. if / else statements

      

    如果文字包含特定单词,则应用数学   如果文本包含特定单词,则不应用数学

  5.   
  6. 我还有一个运行总计,我在循环外分配并添加到循环内
  7.      这一切都很好,但项目需要类结构,我如何基本上采取代码   简单的if else语句基本循环(for each do |x|)和基本variable = true,或variable = input * 52/ 300

    我在哪里开始使用OOP将其转换为基于类的结构?

1 个答案:

答案 0 :(得分:1)

我会给你一个基本的大纲,让你开始,但我不会为你做你的工作。 :)

首先:定义一个类来保存您的输入。

class MyClass
  def initialize(data)
    @data = data
    ...put your initialization code here, this gets run when you call MyClass.new()
  end
  attr_accessor :data 
  ...
end

第二:定义一个“容器”类来保存多个类实例。

class MyContainer
  def initialize(record)
    @records << record
  end
  ...
end
收到的每一行

第三:,创建一个新的类实例

mydata = MyClass.new(input)

Forth:将新实例存储在容器类中。

MyContainer.new(mydata)

现在,您可以在MyContainer中创建一个add方法,它将迭代它在@records中保存的所有类并生成一个总和。