Thuta Learning
Dart
IntermediateProgrammingbeginner

Mixins

Mixin သည် class များစွာမှာ reusable behavior ထပ်ထည့်ရန်သုံးပါတယ်။ Dart မှာ class တစ်ခုက parent class တစ်ခုသာ extends လုပ်နိုင်ပေမယ့် mixin များစွာကို with နဲ့ထည့်နိုင်ပါတယ်။

dart
mixin Logger {
  void log(String message) {
    print('[LOG] $message');
  }
}

mixin Shareable {
  void share(String url) {
    print('Sharing: $url');
  }
}

class BlogPost with Logger, Shareable {
  final String title;
  BlogPost(this.title);
}

void main() {
  final post = BlogPost('Learn Dart');
  post.log('Post opened');
  post.share('https://thutatech.com');
}

BlogPost class က Logger နဲ့ Shareable behavior နှစ်ခုလုံးကိုရယူထားပါတယ်။ Common utility methods တွေကို mixin ထဲထားရင် class များစွာမှာပြန်သုံးလို့ကောင်းပါတယ်။

You should see
[LOG] Post opened Sharing: https://thutatech.com

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

  • Mixin ထဲမှာ unrelated logic အများကြီးထည့်မထားပါနဲ့။ တာဝန်တစ်ခုတည်းရှင်းရှင်းလင်းလင်းရှိတဲ့ mixin ဖြစ်ရင် maintain လုပ်ရလွယ်ပါတယ်။
Mixins | Thuta Learning