Shared Models में Null Safety
क्रॉस-प्लेटफ़ॉर्म क्रैश रोकने के लिए Kotlin nullability उपयोग करें
Shared Models में Null Safety, CoddyKit पर Kotlin Multiplatform Academy का एक निःशुल्क पाठ है। यह 4 में से 3वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Kotlin Multiplatform Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Kotlin Multiplatform Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
ऐसी क्रैश से बचें जिन्हें रोका जा सकता है
किसी मान का गायब होना ऐप क्रैश होने का एक प्रमुख कारण है। Kotlin की null सुरक्षा साझा मॉडलों को दोनों प्लैटफ़ॉर्म पर इससे बचाने देती है।
डिफ़ॉल्ट रूप से अशून्य
सामान्य प्रकार में null कभी नहीं रखा जा सकता। किसी फ़ील्ड को String घोषित करने पर यह सुनिश्चित होता है कि उसमें हमेशा वास्तविक मान होगा।
data class User(val name: String)शून्य-स्वीकारी प्रकार
null की अनुमति देने के लिए प्रश्नवाचक चिह्न जोड़ें। इससे फ़ील्ड वैकल्पिक बन जाता है और कंपाइलर आपको खाली स्थिति सँभालने के लिए बाध्य करता है।
data class User(val name: String, val nickname: String?)सुरक्षित कॉल ऑपरेटर
शून्य-स्वीकारी फ़ील्ड को सुरक्षित रूप से पढ़ने के लिए ?. का उपयोग करें। मान null होने पर पूरी अभिव्यक्ति क्रैश होने के बजाय null देती है।
val length = user.nickname?.lengthवैकल्पिक मान दें
Elvis ऑपरेटर ?: मान null होने पर डिफ़ॉल्ट मान देता है, इसलिए आगे का कोड हमेशा उपयोगी मान प्राप्त करता है।
val shown = user.nickname ?: "Anonymous"मॉडलों में डिफ़ॉल्ट मान
कंस्ट्रक्टर पैरामीटर को डिफ़ॉल्ट मान दें, ताकि कॉल करने वाले वैकल्पिक फ़ील्ड पूरी तरह छोड़ सकें और मॉडल फिर भी अशून्य रहे।
data class User(val name: String, val active: Boolean = true)जाँच के बाद स्मार्ट कास्ट
जब आप पुष्टि कर लेते हैं कि कोई मान null नहीं है, तो Kotlin उसका स्मार्ट कास्ट कर देता है। जाँच के अंदर आप उसे सामान्य अशून्य प्रकार की तरह उपयोग करते हैं।
if (user.nickname != null) {
println(user.nickname.length)
}!! ऑपरेटर से बचें
!! ऑपरेटर किसी मान को अशून्य मानने के लिए बाध्य करता है और उसके null होने पर क्रैश कर देता है। इसके बजाय सुरक्षित कॉल और Elvis का उपयोग करें।
val risky = user.nickname!!.length // can crashवैकल्पिकता का ईमानदारी से मॉडल बनाएँ
किसी फ़ील्ड को शून्य-स्वीकारी तभी चिह्नित करें जब वह वास्तव में अनुपस्थित हो सकता हो। स्पष्ट प्रकार दोनों टीमों के लिए आपके डोमेन का दस्तावेज़ बनते हैं।
data class Profile(val bio: String?, val avatar: String?)क्रॉस-प्लैटफ़ॉर्म में यह क्यों महत्वपूर्ण है
null सुरक्षा commonMain में रहती है, इसलिए Android और iOS दोनों को उसी मॉडल से समान सुरक्षा मिलती है। 🙂
सच्चाई का एकमात्र स्रोत
शून्यता के नियम साझा कोड में होने के कारण कोई भी ऐप गलती से वैकल्पिक फ़ील्ड को अनिवार्य नहीं मान सकता।
त्वरित जाँच
वैकल्पिक मान वाले फ़ील्ड को डिफ़ॉल्ट मान के साथ कैसे पढ़ना चाहिए?
पुनरावलोकन
वैकल्पिक फ़ील्ड को ? से चिह्नित करें, उन्हें सुरक्षित कॉल और Elvis के ज़रिए पढ़ें, और !! से बचें, ताकि साझा मॉडल दोनों ऐप में क्रैश से सुरक्षित रहें।
एआई शिक्षक के साथ Kotlin सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 30
- पाठ
- 120
अक्सर पूछे जाने वाले प्रश्न
क्या “Shared Models में Null Safety” पाठ निःशुल्क है?
हाँ—“Shared Models में Null Safety” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Kotlin Multiplatform Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Kotlin Multiplatform Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“Shared Models में Null Safety” में मैं क्या सीखूँगा?
क्रॉस-प्लेटफ़ॉर्म क्रैश रोकने के लिए Kotlin nullability उपयोग करें आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Kotlin Multiplatform Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या Kotlin Multiplatform Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Kotlin Multiplatform Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 3वाँ पाठ है।
“Shared Models में Null Safety” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस Kotlin Multiplatform Academy पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर Kotlin Multiplatform Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- अपने Domain के लिए Data Classes
- State के लिए Enums और Sealed Classes
- Shared Models में Null Safety
- अपने Models में Validation Helpers