2022-06-01 15:23:30
Dart dasturlash tilidagi Future va Strimning farqi.
Menimcha, ba'zida real o'xshashliklar tushunchalarni tushuntirish/eslab qolish uchun yaxshi ishlaydi. Mana bittasi - bu mukammal emas, lekin menga yordam beradi.
Tasavvur qiling, siz zamonaviy Fast Fud kafelaridan biridasiz va u yerda fast fud tarelkalaridan iborat bo'lgan konveyer bor. Siz shunchaki o'tiring va boshqa buyurtmalar o'tib ketguncha kutib turing. Buyurtmangiz kelganda uni tuting va ovqatlaning.
Future, siz olib ketishga buyurtma berganingizda, ular sizga beradigan raqami bo'lgan tokenga o'xshaydi;
Siz so‘rov qildingiz, lekin natija hali tayyor emas, lekin sizda joyni band qiluvchi token mavjud. Taom tayyor bo'lgach, siz qayta murojat qilasiz (chiqish peshtaxtasi ustidagi raqamli doska sizning raqamingizni ko'rsatadi yoki ular buni baqirishadi) - endi siz ichkariga kirib, ovqatingizni (natijani) olib chiqishingiz mumkin.
Stream esa kichik fast fud tarelkalarini olib yuradigan kamarga o'xshaydi. O'sha stolga o'tirib, siz oqimga (streamga) "obuna bo'ldingiz". Siz keyingi fast fud tarelkasi aynan qachon kelishini bilmaysiz - lekin oshpaz (xabar manbai) uni oqimga (kamarga) joylashtirganda, xo'randalar uni qabul qilishadi. Shuni ta'kidlash kerakki, ular asinxron ravishda keladi (keyingi tarelka/xabar qachon kelishini bilmaysiz), lekin ular ketma-ket kelishadi (ya'ni, agar oshpaz kamarga uchta turdagi fast fudni qo'ysa, qandaydir tartibda -- Siz ularni xuddi shu tartibda kelganini ko'rasiz)
Kodlash nuqtai nazaridan -- Futures ham, Streams ham asinxroniya bilan shug'ullanishga yordam beradi (bu erda narsalar bir zumda sodir bo'lmaydi va siz so'rov qilganingizdan keyin qachon natija olishingizni bilmaysiz).
Farqi shundaki, Fyucherslar bir martalik soʻrov/javob haqidadir (men soʻrayman, kechikish bor, Fyucherim yigʻishga tayyorligi haqida bildirishnoma olaman va men tugataman!) Holbuki, “Streamlar” bu soʻrovlarga doimiy javoblar seriyasidir. Bitta so'rov (men so'rayman, kechikish bor, keyin oqim tugaguncha yoki men uni yopish va ketishga qaror qilmaguncha javoblar olaman).
Post yoqqan bo'lsa do'stlaringiz bilan bo'lishing!Rasm
#dart #stream #future
@flutterblogs
241 viewsКосмос, edited 12:23