Kotlin Multiplatform Academy · पाठ

Shared Code में Flow की मूल बातें

commonMain से मानों की धारा उत्सर्जित करें

पाठ 1, कुल 4 में से13 चरण

Shared Code में Flow की मूल बातें, CoddyKit पर Kotlin Multiplatform Academy का एक निःशुल्क पाठ है। यह 4 में से 1वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Kotlin Multiplatform Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Kotlin Multiplatform Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

मानों की धाराएँ

सस्पेंड फ़ंक्शन एक मान लौटाता है और फिर समाप्त हो जाता है। Flow अलग है: यह समय के साथ मानों की पूरी धारा एक-एक करके जारी करता है। 🌊

डिफ़ॉल्ट रूप से ठंडी

Flow ठंडी होती है: जब तक कोई उसे कलेक्ट करना शुरू न करे, उसके अंदर का कोड कुछ नहीं करता। कलेक्टर न होने पर कोई काम नहीं होता, जिससे आपका साझा कोड आलसी और कम खर्चीला बना रहता है।

flow {} से एक बनाएँ

flow बिल्डर धारा बनाने का सबसे सरल तरीका है। इसके अंदर आप हर मान को सुनने वाले तक पहुँचाने के लिए emit कॉल करते हैं।

fun ticks(): Flow<Int> = flow {
    emit(1)
    emit(2)
    emit(3)
}

emit एक मान भेजता है

हर emit कॉल अगले चरण पर जाने से पहले कलेक्टर को एक मान देती है। धारा तभी समाप्त होती है जब बिल्डर ब्लॉक लौटता है।

प्राप्त करने के लिए कलेक्ट करें

Flow को पढ़ने के लिए आप उसे collect करते हैं। कलेक्ट करना एक सस्पेंड कॉल है, इसलिए यह कॉरूटीन के अंदर रहता है और जारी किए गए हर मान के लिए आपका ब्लॉक चलाता है।

ticks().collect { value ->
    println(value)
}

यह हर जगह काम करता है

Flow kotlinx-coroutines में उपलब्ध है, जो मल्टीप्लेटफ़ॉर्म है। commonMain में लिखा बिल्कुल वही flow कोड Android और iOS पर बिना किसी बदलाव के चलता है। 🎉

निश्चित मानों के लिए flowOf

जब आपको मान पहले से पता हों, तो flowOf उन्हें तुरंत एक Flow में लपेट देता है। यह सबसे तेज़ धारा है जिसे आप बना सकते हैं।

val names = flowOf("Ana", "Beto", "Cem")

List को Flow में बदलें

किसी भी Iterable को asFlow के साथ धारा में बदला जा सकता है। यह तब उपयोगी है जब आपके पास पहले से कोई सूची हो और आप उसे एक-एक आइटम करके प्रोसेस करना चाहते हों।

val stream = listOf(10, 20, 30).asFlow()

समय के साथ मान भेजें

बिल्डर एक सस्पेंड ब्लॉक होने के कारण, आप मान भेजने के बीच delay कर सकते हैं। इससे टिक, सेंसर रीडिंग या पोलिंग जैसी वास्तविक धाराओं का मॉडल बनाया जा सकता है।

flow {
    repeat(3) { i ->
        delay(1000)
        emit(i)
    }
}

Flow बनाम suspend

एकल असिंक्रोनस परिणाम के लिए suspend फ़ंक्शन चुनें, और जब मान लगातार आते रहें तब Flow चुनें। सही विकल्प चुनने से आपका API अपने उद्देश्य के अनुरूप रहता है।

यह साझा कोड के लिए उपयुक्त क्यों है

Flow आपके साझा लेयर को डेटा बदलने पर उसे भेजने देती है, और हर ऐप केवल उसे सुनता है। आपका व्यावसायिक तर्क UI को चलाता है, बिना यह जाने कि वह किस प्लेटफ़ॉर्म पर है।

त्वरित जाँच

आइए सुनिश्चित करें कि मूल बातें अच्छी तरह समझ में आ गई हैं।

पुनरावलोकन

आपने Flow जानी: एक ठंडी धारा, जिसे flow से बनाया और collect से पढ़ा जाता है। यह मल्टीप्लेटफ़ॉर्म है, इसलिए यही धारा Android और iOS दोनों को डेटा देती है। 🌊

शुरुआत निःशुल्क

एआई शिक्षक के साथ Kotlin सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
30
पाठ
120

अक्सर पूछे जाने वाले प्रश्न

क्या “Shared Code में Flow की मूल बातें” पाठ निःशुल्क है?

हाँ—“Shared Code में Flow की मूल बातें” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Kotlin Multiplatform Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Kotlin Multiplatform Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“Shared Code में Flow की मूल बातें” में मैं क्या सीखूँगा?

commonMain से मानों की धारा उत्सर्जित करें आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Kotlin Multiplatform Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Kotlin Multiplatform Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Kotlin Multiplatform Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 1वाँ पाठ है।

“Shared Code में Flow की मूल बातें” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Kotlin Multiplatform Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Kotlin Multiplatform Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. Shared Code में Flow की मूल बातें
  2. साझा UI State के लिए StateFlow
  3. Operators: map, filter, combine
  4. Android और iOS पर Flows एकत्र करें
← Kotlin Multiplatform Academy पर वापस जाएँ