picha

DART somo la 43: Stream kwenye Dart

Katika somo hili utakwenda ujifunz akuhusu concept ya stream kwenye Dart. pia ttaona kwa namna gani strean inaweza kutofautiana na future wakati zote mbili zipo kwenye asychronous programming.

Stream ni mfululizo wa asynchronous operations (events) yaani matukio ya asyncchronous ambayo huwasilisha malue nyingi ambazo hupatikanwa katika wakati ujao. Utafauti mkubwa wa future ni kuwa kwenye future class tunasumngumza operation moja kama tulivyoona huko nyuma, lakini ukija kwenye stream unazungumzia operationa zaidi ya moja ni sawa na iliteration kwenye synchronous operation.


 

Jinsi ya kutengeneza stream class

Kutengeneza stream class kuna mfanano sawa na future. Utaanza na keyword stream ikifuatiwa na aina ya data kama tulivyoona kwenye stream ikifuatiwa na function, ikifutaiwa na keyword async itafuatiwa na body of function. Sasa kwenye async utaongeza alama ya nyita (*).

Stream<String> tovuti() async* {

 await Future.delayed(Duration(seconds: 1));

 yield 'bongoclass';

 await Future.delayed(Duration(seconds: 1));

 yield 'facebook';

 await Future.delayed(Duration(seconds: 1));

 yield 'Google';

}

 

// main function

void main() async {

 // you can use await for loop to get the value from stream

 await for (String jina in tovuti()) {

   print(jina);

 }

}

 

 

Pia tunaweza kutumia keyword yield ili kuweza kufanya iliteration. Angalia mfano hapo chini:

Stream<int> countForOneMinute() async* {

 for (int i = 1; i <= 5; i++) {

   await Future.delayed(const Duration(seconds: 1));

   yield i;

 }

} main() async {

 await for (int i in countForOneMinute()) {

   print(i);

 }

}

 

Pia tunaweza kutumia yield* kwenye stream ama recrucive function, rejea kwenye somo a function kujuwa maana ya recrucive function

Stream<int> str(int n) async* {

 if (n > 0) {

   await Future.delayed(Duration(seconds: 2));

   yield n;

   yield* str(n - 2);

 }

}

 

void main() {

 str(10).f...

Ingia sasa ili uweze kusoma makala hii yote.

Zoezi la Maswali

Nyuma Endelea


Umeionaje Makala hii.. ?

       
Author: Rajabu image Tarehe: 2024-05-10 14:53:23 Topic: DART Main: Masomo File: Download PDF Views 962

Share On:

Share follows: 0 | Unique share links followed: 0
Sponsored links
👉1 ai web app     👉2 Kitau cha Fiqh     👉3 Dua za Mitume na Manabii     👉4 Tafasiri ya Riyadh Swalihina     👉5 kitabu cha Simulizi     👉6 Madrasa kiganjani    

Post zinazofanana:

DART somo la 41: concept ya generic kwenye dart

Katika somo hili utakwenda kujifunza kuhusu concept ya generics ili kuweza kufanya kazi na aina mbalimbali za data kwenye class.

Soma Zaidi...
DART somo la 21: Jinsi ya kutengeneza library kwenye Dart

Katika somo hili utajifunza kuhusu dart library. Pia tutakwend aktengeneza library yetu wennyewe kwa ajili ya kufanya mazoezi zaidi.

Soma Zaidi...
DART somo la 32: Inheritance kwenye construct method:

Katika masomo yaliopita tumesha jifunza jinsi inheritance inavyokuwa, ila hatujaona kwa namna gani utaweza ku inherit constructor method. Somo hili litashughulika na swla hilo.

Soma Zaidi...
DART somo la 6: Dart operator na jinsi zinavyofanya kazi.

Katika somo hili utakwenda kujifunza kuhusu operator kwenye Dart, kazi zake na jinsi ya kuzitumia.

Soma Zaidi...
DART SOMO LA 14: Aina za function kwenye Dart

Katika somo hili tutakwenda kuingia ndani zaidi kwenye somo la function. Hapa tutakwenda kuona aina za function.

Soma Zaidi...
DART somo la 33 concept ya polymorphism

Katika somo hili utakwenda kujifunza kuhusu concept ya polymorphism.

Soma Zaidi...