Thuta Learning
ရှာဖွေရန်
AdvancedProgrammingbeginner

Modules & Mixins

စိတ်လျှော့ပါ။ ဒီခန်းကို စာအုပ်လိုမဟုတ်ဘဲ စကားပြောသလိုပဲ၊ နားလည်လွယ်အောင် ရှင်းပါမယ်။

Module သည် methods/constants တွေကို စုထားတဲ့ container ဖြစ်ပါတယ်။ Ruby မှာ module ကို namespacing အတွက်လည်းသုံးပြီး mixin အဖြစ် class ထဲထည့်သုံးလို့လည်းရပါတယ်။

ruby
module Drivable
  def drive
    puts "Vroom vroom!"
  end
end

class Car
  include Drivable
end

class Truck
  include Drivable
end

Car.new.drive
Truck.new.drive

include Drivable လုပ်ထားတဲ့ class တွေက module ထဲက drive method ကိုသုံးနိုင်ပါတယ်။ Inheritance မသုံးဘဲ behavior မျှဝေချင်တဲ့အခါ အဆင်ပြေပါတယ်။

You should see
Vroom vroom! Vroom vroom!

Info

Module name ကိုလည်း class name လို စာလုံးအကြီးနဲ့စရေးပါ။

ဒီနေရာမှာ လူအများမှားတတ်တယ်

  • Module ကို object အဖြစ် Drivable.new လို့ဖန်တီးလို့မရပါ။ Module က class မဟုတ်ပါ။
Modules & Mixins | Thuta Learning