2025 में C++ का परिचय: व्यावहारिक रूप से कहाँ से शुरू करें

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

परिचय: प्रोग्रामिंग की दुनिया पर शांत कब्ज़ा

\n\n

एक प्रोग्रामिंग भाषा की कल्पना करें जो C++ की गति को Python की सुरक्षा के साथ जोड़ती है। एक स्वप्नलोक जैसा लगता है? खैर, ऐसा नहीं है। Rust बिल्कुल ऐसी ही भाषा है। पिछले पाँच वर्षों में, इसने एक वास्तविक क्रांति ला दी है: एक प्रायोगिक Mozilla परियोजना से लेकर Linux कर्नेल, ब्राउज़र और क्रिप्टोकरेंसी सिस्टम की नींव तक।

\n\n

लेकिन Rust इतना लोकप्रिय क्यों है? आखिरकार, इसे Go या Java की तुलना में सीखना कठिन है। इसका उत्तर इसके अद्वितीय इतिहास और सुविचारित आर्किटेक्चर में निहित है। आइए जानें कि कैसे एक साधारण भाषा, बिना कचरा संग्रहक (garbage collector) के, हजारों डेवलपर्स का दिल जीत लिया।

\n\n

Rust का संक्षिप्त इतिहास: एक व्यक्तिगत परियोजना से वैश्विक मानक तक

\n\n

2006–2010: Mozilla की गहराइयों में जन्म

\n

2006 में, इंजीनियर Graydon Hoare ने एक व्यक्तिगत शौक परियोजना के रूप में Rust लिखना शुरू किया। वह इस विचार से प्रेरित थे: एक ऐसी भाषा बनाना जो सुरक्षित, समवर्ती और व्यावहारिक हो। 2009 में, Mozilla ने इसकी क्षमता देखी और इसे अपने संरक्षण में ले लिया।

\n\n

पहला कंपाइलर OCaml में लिखा गया था, लेकिन 2010 तक, Rust के पास अपना स्वयं का कंपाइलर Rust में लिखा हुआ था — एक क्लासिक बूटस्ट्रैपिंग।

\n\n

2015: पहला स्थिर रिलीज़ — एक महत्वपूर्ण मोड़

\n

15 मई, 2015 को, Rust 1.0 जारी किया गया। यह सिर्फ एक संस्करण नहीं था — यह एक घोषणापत्र था। डेवलपर्स ने वादा किया: "हम आपके कोड को नहीं तोड़ेंगे।" उस पल से, समुदाय तेजी से बढ़ने लगा। यह वह अवधि थी जब "Rust" शब्द केवल धातु के क्षरण से जुड़ा नहीं रह गया था।

\n\n

2019–2024: मुख्यधारा में प्रवेश

\n

2019 में, Rust Stack Overflow सर्वेक्षण के अनुसार शीर्ष 10 भाषाओं में शामिल हो गया, और 2022 में, यह लगातार सातवें वर्ष "सबसे प्रिय भाषा" के रूप में पहले स्थान पर आ गया। 2023 में, Linux कर्नेल ने आधिकारिक तौर पर ड्राइवर विकास के लिए Rust को अपनाया। वह सच्चाई का क्षण था।

\n\n

Rust के लोकप्रिय होने के 5 कारण (कोड उदाहरणों के साथ)

\n\n

1. बिना कचरा संग्रहक के मेमोरी सुरक्षा

\n

Rust की मुख्य "विशेषता" स्वामित्व प्रणाली (ownership system) है। कंपाइलर जाँचता है कि आप कंपाइल समय पर मेमोरी का उपयोग कैसे करते हैं। कोई नल पॉइंटर्स, लटकते संदर्भ (dangling references), या डबल फ्री नहीं।

\n\n

उदाहरण: C++ में एक सामान्य त्रुटि डिलीट करने के बाद पॉइंटर का उपयोग करना है। Rust में, यह असंभव है:

\n\n
fn main() {\n    let s = String::from("hello");\n    drop(s); // स्पष्ट विलोपन\n    // println!("{}", s); // कम्पाइलेशन एरर! s अब मौजूद नहीं है\n}
\n\n

कंपाइलर आपको कुछ भी बेवकूफी भरा करने नहीं देगा। यह आपकी मेमोरी के लिए एक निजी अंगरक्षक रखने जैसा है।

\n\n

2. शून्य-लागत अमूर्तता (Zero-Cost Abstractions)

\n

Rust में, आप उच्च-स्तरीय कोड लिखते हैं, लेकिन यह मशीन कोड में संकलित होता है जो उतना ही कुशल होता है जितना कि आपने C में लिखा हो। क्लोजर, इटरेटर, जेनेरिक्स — इनमें से कोई भी रनटाइम ओवरहेड नहीं जोड़ता।

\n\n

संख्याओं को जोड़ने के दो तरीकों की तुलना करें:

\n\n
// अनिवार्य शैली (Imperative style)\nlet sum = 0;\nfor i in 0..100 {\n    sum += i;\n}\n\n// इटरेटर के साथ कार्यात्मक शैली (Functional style with iterator)\nlet sum: i32 = (0..100).sum(); // उसी कोड में संकलित होता है!
\n\n

दोनों विकल्प समान गति से चलेंगे। Rust प्रदर्शन के डर के बिना सुंदर कोड लिखने को प्रोत्साहित करता है।

\n\n

3. मजबूत टाइप सिस्टम और ट्रेट्स (Traits)

\n

Rust बीजगणितीय डेटा प्रकार (algebraic data types) और एक शक्तिशाली ट्रेट सिस्टम का उपयोग करता है। यह आपको व्यावसायिक तर्क को सीधे प्रकारों में व्यक्त करने की अनुमति देता है, जिससे अमान्य स्थितियों को अप्रस्तुत कर दिया जाता है।

\n\n

उदाहरण: एक फ़ंक्शन जो या तो एक संख्या या एक त्रुटि लौटाता है:

\n\n
fn divide(a: f64, b: f64) -> Result<f64, String> {\n    if b == 0.0 {\n        Err("शून्य से भाग!".to_string())\n    } else {\n        Ok(a / b)\n    }\n}\n\nfn main() {\n    match divide(10.0, 2.0) {\n        Ok(result) => println!("परिणाम: {}", result),\n        Err(e) => println!("त्रुटि: {}", e),\n    }\n}
\n\n

आपको दोनों मामलों को संभालना होगा। कंपाइलर आपको किसी संभावित मामले को अनदेखा करने नहीं देगा।

ब्लॉग

पुस्तक अनुशंसाएँ