Thuta Learning
Dart
AdvancedProgrammingbeginner

Futures, Streams & Async Errors

Dartသင်ခန်းစာ 22

ဒီခန်းပြီးရင် ဘာတတ်သွားမလဲ

  • Futures, Streams & Async Errors ရဲ့ type နဲ့ runtime behavior ကိုရှင်းပြနိုင်ရန်
  • Null, failure, boundary နဲ့ async cases စမ်းနိုင်ရန်
  • Safe, idiomatic, testable Dart code ရေးနိုင်ရန်

Futures, Streams & Async Errors မှာ event-loop responsiveness, Future/Stream errors, subscription lifecycle နဲ့ isolate message boundaries ကိုရှင်းရပါတယ်။ I/O အတွက် async သုံးပြီး CPU-heavy work ကို Isolate.run ဖြင့်ခွဲပါ။

ပိုပြီးနားလည်ထားရမယ့် အချက်

Futures, Streams & Async Errors မှာ event-loop responsiveness, Future/Stream errors, subscription lifecycle နဲ့ isolate message boundaries ကိုရှင်းရပါတယ်။ I/O အတွက် async သုံးပြီး CPU-heavy work ကို Isolate.run ဖြင့်ခွဲပါ။

လက်တွေ့မှာ ဘယ်လိုအသုံးချမလဲ

Futures, Streams & Async Errors example ကို null, empty, boundary, invalid, async-error နဲ့ cancellation cases ဖြင့် run/test လုပ်ပါ။ dart format, dart analyze နဲ့ dart test ကိုသုံးပြီး Future/Stream subscription နဲ့ isolate boundary ကိုလိုအပ်သလိုစစ်ပါ။

ဒီသင်ခန်းစာပြီးရင်

dart
Stream<int> squares() async* {
  for (var value in [1, 2, 3]) {
    await Future<void>.delayed(Duration.zero);
    yield value * value;
  }
}

Future<void> main() async {
  await for (final value in squares()) {
    print(value);
  }
}
You should see
1
4
9

ကိုယ်တိုင်စမ်းကြည့်ရန်

Futures, Streams & Async Errors example ကို null, empty, boundary, invalid, async-error နဲ့ cancellation cases ဖြင့် run/test လုပ်ပါ။ dart format, dart analyze နဲ့ dart test ကိုသုံးပြီး Future/Stream subscription နဲ့ isolate boundary ကိုလိုအပ်သလိုစစ်ပါ။

Null/Async သတိပေးချက်

Sample output တစ်ခုမှန်ရုံဖြင့် null, promotion, Future, Stream နဲ့ isolate paths အားလုံးမှန်ပြီဟုယူဆခြင်း။

Asynchronous programming: StreamsDart

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

  • Sample output တစ်ခုမှန်ရုံဖြင့် null, promotion, Future, Stream နဲ့ isolate paths အားလုံးမှန်ပြီဟုယူဆခြင်း။
  • dynamic, ! သို့မပိတ်ထားသော Stream subscription ဖြင့် type safety နဲ့ resource lifecycle ကိုကျော်ခြင်း။

လက်တွေ့လေ့ကျင့်ခန်း

Futures, Streams & Async Errors example ကို null, empty, boundary, invalid, async-error နဲ့ cancellation cases ဖြင့် run/test လုပ်ပါ။ dart format, dart analyze နဲ့ dart test ကိုသုံးပြီး Future/Stream subscription နဲ့ isolate boundary ကိုလိုအပ်သလိုစစ်ပါ။

You'll know it worked when: 1 4 9

Futures, Streams & Async Errors | Thuta Learning