परिचय: Kotlin की चर्चा क्यों है हर तरफ?
\n\nअगर आपने पिछले 3-4 सालों में GitHub या मोबाइल डेवलपर की नौकरियों पर नज़र डाली है, तो आपने ज़रूर देखा होगा कि Kotlin प्रोग्रामिंग भाषा कितनी तेज़ी से बढ़ी है। 2016 में इसके बारे में सिर्फ JetBrains के कट्टर प्रशंसक ही जानते थे, लेकिन आज यह Android की आधिकारिक भाषा है, दुनिया की सबसे पसंदीदा भाषाओं में से एक (Stack Overflow सर्वेक्षण के अनुसार) और किसी भी मोबाइल डेवलपर के रिज्यूमे में होना ज़रूरी है।
\n\nलेकिन सच कहूं तो, कितनी भाषाओं ने 'Java को खत्म करने' का वादा किया था? दर्जनों। तो Kotlin वास्तव में सफल क्यों हुआ? इस लेख में हम Kotlin के इतिहास, इसकी प्रमुख विशेषताओं को वास्तविक उदाहरणों के साथ समझेंगे और जानेंगे कि डेवलपर्स बड़े पैमाने पर इस पर क्यों शिफ्ट हो रहे हैं। स्पॉइलर: इसका कारण सिर्फ Google का 'जबरदस्ती' करना नहीं है।
\n\nKotlin का संक्षिप्त इतिहास: विचार से विजय तक
\n\nJetBrains की प्रयोगशाला में जन्म (2011–2016)
\n\n2011 में, JetBrains टीम (वही लोग जिन्होंने IntelliJ IDEA बनाया) ने महसूस किया: उन्हें एक ऐसी भाषा चाहिए जो Java की समस्याओं को हल करे, लेकिन पूरी तरह से इसके साथ संगत हो। Java बहुत लंबी-चौड़ी थी, null-पॉइंटर्स से परेशान थी, और इसमें लैम्ब्डा या फंक्शनल प्रोग्रामिंग जैसी आधुनिक सुविधाओं का अभाव था।
\n\nइस तरह Kotlin का जन्म हुआ। इसका नाम फिनलैंड की खाड़ी में स्थित कोटलिन द्वीप के नाम पर रखा गया (जो सेंट पीटर्सबर्ग के पास है, जहाँ कंपनी का मुख्यालय है)। पहला स्थिर संस्करण फरवरी 2016 में जारी हुआ।
\n\nGoogle का आशीर्वाद: 2017 - वापसी का बिंदु
\n\nसबसे बड़ा मोड़ Google I/O 2017 में आया। Google ने घोषणा की कि Kotlin Android डेवलपमेंट के लिए आधिकारिक भाषा बन गई है। यह सिर्फ मान्यता नहीं थी, बल्कि बाजार के लिए एक शक्तिशाली संकेत था। स्टूडियो ने पुराने प्रोजेक्ट्स को फिर से लिखना शुरू कर दिया, और नए प्रोजेक्ट्स सीधे Kotlin पर बनाए जाने लगे।
\n\n2019 तक, Kotlin पहले से ही 50% Android डेवलपर्स की पसंदीदा भाषा बन चुकी थी। और 2021 में Google ने बताया कि Google Play के टॉप-1000 ऐप्स में से 80% Kotlin का उपयोग करते हैं।
\n\nKotlin के इतने लोकप्रिय होने के टॉप-5 कारण
\n\nअब सबसे दिलचस्प हिस्से पर आते हैं - तकनीकी और गैर-तकनीकी कारण। मैंने उन्हें स्पष्टता के लिए ब्लॉक में बांटा है।
\n\n1. Java के साथ पूर्ण संगतता (और 'सब कुछ फिर से लिखने' की ज़रूरत नहीं)
\n\nयह शायद सबसे बड़ा तुरुप का पत्ता है। आप एक पुराने Java प्रोजेक्ट को ले सकते हैं और Kotlin में नई फाइलें लिखना शुरू कर सकते हैं। वे एक साथ पूरी तरह से काम करेंगी। 'सब कुछ हटाओ और फिर से शुरू करो' जैसी कोई बात नहीं।
\n\n// Java क्लास (पुराना)\npublic class User {\n private String name;\n public String getName() { return name; }\n public void setName(String name) { this.name = name; }\n}\n\n// Kotlin क्लास (नया) - Java क्लास का आराम से उपयोग करता है\nfun main() {\n val user = User()\n user.name = "अन्ना" // Kotlin अपने आप setName() को कॉल करता है\n println(user.name) // Kotlin अपने आप getName() को कॉल करता है\n}\n\n\nइससे भी बढ़कर, आप Java से Kotlin कोड और इसके विपरीत कॉल कर सकते हैं। यह सीखने की बाधा को लगभग शून्य कर देता है।
\n\n2. Null Safety - जिसकी Java में बहुत कमी थी
\n\nप्रसिद्ध NullPointerException - Java का अभिशाप। Kotlin में, डिफ़ॉल्ट रूप से प्रकार null नहीं हो सकते। यदि कोई वेरिएबल null हो सकता है, तो आपको इसे प्रश्न चिह्न ? के साथ स्पष्ट रूप से इंगित करना होगा।
// Java में:\n// String name = null;\n// int length = name.length(); // NPE!\n\n// Kotlin में:\nvar name: String? = null\n// name.length // कंपाइलेशन एरर! Nullable टाइप पर मेथड कॉल नहीं कर सकते\n\n// सही तरीका:\nval length = name?.length ?: 0 // सुरक्षित कॉल + एल्विस ऑपरेटर\nprintln(length) // 0 प्रिंट करेगा\n\n\nयह Kotlin की लोकप्रियता के प्रमुख कारणों में से एक है: आप रनटाइम के बजाय कंपाइलेशन के समय ही त्रुटियां पकड़ लेते हैं। उत्पाद अधिक स्थिर हो जाते हैं।
\n\n3. संक्षिप्तता और अभिव्यंजना (कम कोड = कम बग)
\n\nKotlin आपको Java की तुलना में 2-3 गुना कम कोड लिखने की अनुमति देता है। खुद तुलना करें:
\n\n// Java: Data class\npublic class Person {\n private String name;\n private int age