未経験からエンジニア 奮闘記

未経験からエンジニアに自由に生きる途中

MENU

オブジェクト思考設計 クラスを作る理由

クラスを作成する目的

クラスを使う目的って、 プログラミングは重複した記述を避ける、かつまとまりを持たせる為にクラスを作るのかな

# チェーン charing
# コグは車輪の内側のやつ cog

# チェーンはこっちの方が大きい
charing = 52
cog = 11
ratio = charing / cog.to_f
puts "ratio #{ratio}"

# コグはこっちの方が大きい
charing = 30
cog = 27
ratio = charing / cog.to_f

puts "ratio #{ratio}"

上記だと、ratioの計算式が2回も出てきたり重複があるので、 クラスを作成する事により、重複を削除できる

class Gear
  attr_reader :charing, :cog

  def initialize(charing, cog)
    @charing = charing
    @cog = cog
  end

  def ratio
    charing / cog.to_f
  end
end

puts Gear.new(52,11).ratio

=> 4.7272727272727275

puts Gear.new(30,27).ratio
=> 1.1111111111111112

オブジェクト指向設計ガイドより

www.amazon.co.jp