History of C++ In Hindi

History of C++ In Hindi

C++ प्रोग्रामिंग लैंग्वेज एक पॉवरफुल जनरल मल्टी-पर्पस प्रोग्रामिंग एप्लीकेशन सॉफ्टवेयर प्लेटफार्म है. जो एक पॉपुलर वर्ल्ड वाइड वर्षो में डेवलप हुई एक यूनिवर्सल प्रोग्रामिंग सॉफ्टवेयर है। C++ प्रोग्रामिंग को C प्रोग्रामिंग लैंग्वेज के एक्सटेंडेड वर्जन के रूप में ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग कांसेप्ट फीचर्स को ऐड करने के लिए डिज़ाइन और डेवलप किया गया था. सामान्य रूप से, C++ प्रोग्रामिंग का कमर्शियल पर्पस सिस्टम सॉफ्टवेयर डेवलपमेंट, गेम डेवलपमेंट, क्रॉस-प्लेटफार्म एप्लीकेशन, और हाई-परफॉर्मेंस यूनिवर्सल सिस्टम सॉफ्टवेयर एप्लिकेशन के लिए ग्लोबली मोस्ट ऑफ़ यूज़ होने वाली लैंग्वेज में से एक बन गई है।

History of C++ In Hindi

A Detailed History of the C++ Programming Language.

Logo Before C and the Birth of C 1970s.

C++ प्रोग्रामिंग लैंग्वेज से पहले, C प्रोग्रामिंग लैंग्वेज वर्ष 1970 के दशक के स्टार्टिंग में एक अंडर डेवलपमेंट प्रोग्रामिंग लैंग्वेज थी। C लैंग्वेज को AT&T बेल लैब्स में डेनिस रिची ने डिज़ाइन और डेवलप किया था। डेनिस रिची का पर्पस cui और gui बेस्ड स्माल ऑपरेटिंग सिस्टम जैसे सिस्टम सॉफ्टवेयर क्रिएट करने के लिए एक हाई-लेवल प्रोग्रामिंग लैंग्वेज डेवलपमेंट था। C लैंग्वेज B लैंग्वेज जैसे अपने पहले के यूज़ लोगों प्रोग्रामिंग से एडवांस्ड इम्प्रूव प्रोग्रामिंग थी. उस समय C लैंग्वेज में एब्स्ट्रैक्शन और एफिशिएंसी दोनों कंडीशन में कई रिस्ट्रिक्शन या लिमिटेशन थीं।

  • 1972 – इस समय C प्रोग्रामिंग लैंग्वेज को ऑफिशियली इंट्रोड्यूस या लांच किया गया और उस समय C लैंग्वेज अपनी सिम्प्लिसिटी और प्रोग्रामिंग एफिशिएंसी फीचर्स और कैपेबिलिटी के कारण जल्द ही पॉपुलर हो गई।
  • 1978 – इस वर्ष ब्रायन कर्निघन और डेनिस रिची का “द C प्रोग्रामिंग लैंग्वेज” का पहला एडिशन ऑफिशियली पब्लिश या लांच किया गया। इसने इसके बाद C लैंग्वेज को एक बहुत अधिक यूज़ होने वाली प्रोग्रामिंग लैंग्वेज के रूप में स्ट्रॉन्ग्ली लोगो के बिच रेकमेंड किया।

C++ programming language was born 1979–1983.

C++ प्रोग्रामिंग लैंग्वेज का बेसिक स्टार्टिंग बेल लैब्स में “C विद क्लासेस” के नाम से एक स्माल प्रोजेक्ट के रूप में हुई थी. जिसे उस समय बजरने स्ट्रॉस्ट्रप ने लीड कर क्रिएट किया था। C विद क्लासेस का पर्पस C लैंग्वेज की एफिशिएंसी और केपेबिलिटी को हायर-लेवल लैंग्वेज की एब्स्ट्रैक्शन क्लास कैपेबिलिटीज़, स्पेशली उस समय इन डिमांड ऑब्जेक्ट-ओरिएंटेड फीचर्स के साथ ग्रुप कर लांच करना था।

  • 1979 – बजरने स्ट्रॉस्ट्रप ने C विद क्लासेस कांसेप्ट पर काम स्टार्ट किया, जो C++ लैंग्वेज का प्रीकर्सर था। बजरने स्ट्रॉस्ट्रप ने ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग (OOP) कैपेबिलिटीज़ फीचर्स प्रोवाइड करने के लिए C लैंग्वेज में क्लासेस, क्लास कंस्ट्रक्टर, और बेसिक क्लास इनहेरिटेंस रुट क्लास से सबक्लास जैसे फीचर्स ऐड या लांच किए गए थे।
  • 1983 – इस वर्ष C++ प्रोग्रामिंग लैंग्वेज का नाम ऑफिशियली C++ रखा गया था, जहा “++” सिंबल C लैंग्वेज में इंक्रीमेंट ऑपरेटर को रिप्रेजेंट करते है. जो C लैंग्वेज के एडवांस वर्जन को रिप्रेजेंट करता है। बजरने स्ट्रॉस्ट्रप का उद्देश्य C लैंग्वेज को बेहतर और एडवांस बनाना था, न कि C लैंग्वेज के फंडामेंटल कोर को रिप्लेस करना, जिसमे बेहतर एब्स्ट्रैक्शन कांसेप्ट, मॉड्यूलरिटी स्माल ब्लॉक सोर्स कोड क्रिएशन और सोर्स कोड रीयूज़ के लिए नए फीचर्स के साथ इसे इंट्रोड्यूस किया गया।

C++ programming Early development and standardization 1985–1990.

वर्ष 1980 दशक के बाद C++ प्रोग्रामिंग के अंत में बहुत फ़ास्ट डेवलपमेंट हुआ, और कई एडवांस्ड डिज़ाइन डेवलपमेंट से मॉडर्न C++ प्रोग्रामिंग की फाउंडेशन रखी गई।

  • 1985 – इस वर्ष C++ प्रोग्रामिंग का पहला कमर्शियल वर्जन रिलीज़ किया गया और AT&T लेब ने पब्लिक यूज़ के लिए इस अवेलबल कराया। इस C++ वर्जन में आपको क्लास, बेसिक इनहेरिटेंस, ऑपरेटर ओवरलोडिंग, और डाटा टाइप चेकिंग के लिए बिल्ट-इन सपोर्ट फीचर्स इन्क्लुड था। इसमें आपको कई रेडीमेड टेम्पलेट भी अवेलेबल मिलते थे. जो आपको इसमें जेनेरिक प्रोग्रामिंग (जिसमे किसी भी डेटा टाइप के साथ काम करने वाले फंक्शन और क्लास क्रिएट करने) की फुल परमिशन थी।
  • 1989 – इस वर्ष स्ट्रॉस्ट्रप ने “द C++ प्रोग्रामिंग लैंग्वेज” का पहला एडिशन लांच किया था, जो उस समय C++ प्रोग्रामिंग लैंग्वेज लर्निंग के लिए फिक्स रेफरेंस बन गया।
  • 1989–1990 – इन वर्षो में C++ लैंग्वेज लगातार डिज़ाइन डेवलप होती रही थी. जिसमें समयानुसार C++ में मल्टीपल इनहेरिटेंस और वर्चुअल फंक्शन जैसे ऑब्जेक्ट-ओरिएंटेड एडवांस्ड फीचर्स में कई इम्प्रोवेंमेंट किए गए। इस कम्पलीट डिज़ाइन एंड डेवलपमेंट  फेज में स्ट्रॉस्ट्रप का इम्पोर्टेन्ट रोल था।

First Standardization Version 1990–1998.

इसके बाद C++ प्रोग्रामिंग लैंग्वेज और स्ट्रांग और मैच्योर हो गई और धीरे धीरे यह एक स्टैंडर्डाइज्ड लैंग्वेज के रूप में पॉपुलर होने लगी।

  • 1990 – इस वर्ष C++ लैंग्वेज का एक स्टैंडर्डाइज्ड मल्टी-पर्पस वर्जन डिज़ाइन और डेवलप करने के लिए ANSI/ISO C++ कमेटी क्रिएट की गई। जहा ANSI/ISO प्रोसेस को पूरा होने में लगभग एक दशक का समय लगा, और इसके चलते C++ प्रोग्रामिंग लैंग्वेज एक फॉर्मल स्टैंडर्ड पर्पस वाली फर्स्ट लार्ज लेवल स्केल पर यूज़ होने वाली प्रोग्रामिंग लैंग्वेज में से एक बन गई थी।
  • 1998 – इस वर्ष ISO/IEC 14882: 1998, जिसे C++98 वर्जन के नाम से भी जाना जाता है. यह C++ लैंग्वेज के लिए एक पहला इंटरनेशनल स्टैंडर्ड वर्जन था। इस वर्जन ने C++ लैंग्वेज के कई फीचर्स को फॉर्मल यूज़ बनाया और टेम्पलेट मेटाप्रोग्रामिंग, स्टैंडर्ड टेम्पलेट लाइब्रेरी (STL), और एक्सेप्शन एरर हैंडलिंग जैसे एडवांस इश्यूज में इम्प्रोवेंमेंट और डेवलपमेंट किए गए।

Modern C++ Evolution 2000–2010.

समयानुसार C++ प्रोग्रामिंग लैंग्वेज कन्टिन्यूसली एक ज़्यादा पावरफ़ुल और फ़्लेक्सिबल प्रोग्रामिंग सॉफ्टवेयर एप्लीकेशन बनती चली गई. जिसमें मॉडर्न प्रोग्रामिंग पैराडाइम के सभी फ़ीचर्स और फंक्शन मौजूद थे।

  • 2003 – इस वर्ष C++ प्रोग्रामिंग में इश्यूज बग फ़िक्स और कुछ स्माल इम्प्रोवेंमेंट को करेक्ट करने के लिए एक स्माल अपडेट किया गया. इसके बाद C++03, वर्जन रिलीज़ किया गया। इसमें कोई बिग अपडेट या नया फ़ीचर नहीं था. लेकिन इस अपडेट ने C++98 स्टैंडर्ड वर्जन में कुछ बेसिक कन्फ़्यूज़न कांसेप्ट को क्लियर किया।
  • 2005–2006 – इन वर्ष में C++0x प्रोजेक्ट स्टार्ट हुआ, जिसका पर्पस C++ प्रोग्रामिंग का एक नया वर्शन क्रिएट करना था. जिसमें कई मॉडर्न प्रोग्रामिंग फ़ीचर्स शामिल किए गए।
  • 2011 – इस वर्ष C++11 स्टैंडर्ड वर्जन को रिलीज़ किया गया था. जो C++ की हिस्ट्री के सबसे इम्पोर्टेन्ट अपडेट्स में से एक था।

This included some special or advanced features.

  • इस वर्जन में फ़ंक्शनल प्रोग्रामिंग कांसेप्ट स्टाइल के लिए लैम्ब्डा एक्सप्रेशन को ऐड किया गया।
  • सिस्टम रिसोर्स को कॉपी करने के बदले मूव करने की परमिशन प्रोवाइड कर परफ़ॉर्मेंस को ऑप्टिमाइज़ करने के लिए मूव सिमेंटिक्स फीचर्स लांच किया गया।
  • ऑटो कीवर्ड के साथ टाइप इनफ़रेंस लांच किए गए।
  • नए स्टैंडर्ड लाइब्रेरी फ़ीचर्स ऐड किए गए. जैसे, nullptr, स्मार्ट पॉइंटर्स, और कॉन्करेंसी सपोर्ट जैसे, थ्रेड्स और एटॉमिक्स फीचर्स डिस्प्ले किये गए।
  • कलेक्शन डाटा टाइप स्टैक, क्यू, डिस्टीनरी डाटा टाइप पर आसान लूपिंग इटरेशन के लिए रेंज-बेस्ड फ़ॉर लूप्स फीचर्स अल्लॉव किया गया।

Continuous evolution 2014–2020.

C++11 वर्जन के बाद, मॉडर्न प्रोग्रामिंग कांसेप्ट टेक्नीक्स और प्रोग्रामिंग यूज़ेबिलिटी को इम्प्रूव करने पर फ़ोकस के साथ, C++11 लैंग्वेज लगातार इवॉल्व होती रही।

  • 2014 – C++14 स्टैंडर्ड वर्जन ने C++11 के कम्पेरिजन में कई बग एरर फ़िक्स और छोटे मोटे इम्प्रूवमेंट्स इंट्रोड्यूस किए। स्पेशली रूप से, C++11 लैम्ब्डा एक्सप्रेशन्स ज़्यादा स्ट्रांग हो गए और इसमें यूज़र-डिफ़ाइंड लिटरल यूज़ के लिए बेहतर सपोर्ट और एनवायरनमेंट था।
  • 2017 – C++17 स्टैंडर्ड वर्जन में नए प्रोग्रामिंग फ़ीचर्स को और इम्प्रूव करने और नई फ़ंक्शनैलिटी ऐड करने पर फ़ोकस किया। जैसे,
  • टपल डाटा टाइप या पेयर को अनपैक करने के लिए स्ट्रक्चर्ड बाइंडिंग फीचर्स था।
  • उन पर्टिकुलर डाटा टाइप वैल्यूज़ को रिप्रेज़ेंट करने के लिए ऑप्शनल टाइप है.  जो प्रोग्राम में एब्सेंट हो सकती हैं।
  • फाइल हैंडलिंग में फ़ाइल और डायरेक्टरी लोकेशन पाथ को इजी हैंडल करने के लिए फ़ाइल सिस्टम लाइब्रेरी सपोर्ट प्रोवाइड किया गया था।
  • 2020 – इस वर्ष C++20 लैंग्वेज के स्टैंडर्ड वर्जन में कई नए फीचर्स ऐड किये गए, जिनमें मुख्य रूप से शामिल हैं.
  • प्रोग्रामिंग में कॉन्सेप्ट्स, टेम्पलेट टाइप पर कंस्ट्रेंट इंडीकेट करने का एक मेथड, टेम्पलेट एरर मैसेज को इम्प्रूव करना और बेहतर टाइप सेफ्टी को अप्लाई करना आदि।
  • मौजूदा प्रोग्राम में कोरूटीन यूज़ करना, जो अधिक रीडेबल कम्पेटिबल एसिंक्रोनस प्रोग्राम सोर्स कोड क्रिएशन की परमिशन प्रोवाइड करना।
  • इसमें रेंजेस लाइब्रेरी सपोर्ट था, जो डेटा टाइप डिफ़ॉल्ट रेंज के साथ काम करने के लिए ज़्यादा फंक्शनल स्टाइल का मेथड प्रोवाइड करता है।
  • मौजूदा प्रोग्राम में एडवांस्ड डेट और टाइम हैंडलिंग के लिए कैलेंडर और टाइमज़ोन लाइब्रेरी सपोर्ट प्रोवाइड करना।

C++23 version: Major update improvements.

वर्ष 2023 तक, C++ प्रोग्रामिंग एक बहुत ही एडवांस्ड मल्टी-पर्पस मैच्योर प्रोग्रामिंग लैंग्वेज बन गई है. जिसमें वर्तमान समय के अनुसार C++ लैंग्वेज की सेफ्टी और उसकी डिवाइस सिस्टम परफॉर्मेंस दोनों को इम्प्रूव करने के मकसद से कई नए फीचर्स इन्क्लुड किए गए हैं। C++23 स्टैंडर्ड वर्जन में लैंग्वेज को यूज़ करने में आसान और ज़्यादा स्ट्रांग मल्टी-पर्पस बनाने के लिए और कई सुधार किए. जिसमे,

  • पैटर्न मैचिंग स्टेटमेंट फीचर्स (जो आपको अधिक एडवांस्ड स्विच-केस स्टेटमेंट का एक नया फॉर्मेट) को ऐड किया।
  • C++23 स्टैंडर्ड वर्जन में कॉन्ट्रैक्ट्स के लिए सपोर्ट प्रोवाइड किया गया, जो फंक्शन्स प्रोग्रामिंग के लिए प्रीकंडीशन्स और पोस्टकंडीशन्स इंडीकेट करने के लिए ज़्यादा एक्सप्रेसिव मेथड प्रोवाइड करता है।
  • इम्प्रूव प्रोग्राम constexpr (कंपाइल-टाइम कंप्यूटेशन) फ़ीचर को ऐड किया गया, जिससे प्रोग्राम कंपाइलेशन फेज के दौरान और भी मुश्किल डिजिटल कंप्यूटेशन परफॉर्म किए जा सकते हैं।

Status to till date and C++26 standard.

अभी C++26 यह डेवलपमेंट फेज में है, इसे मार्च C++26 को रिलीज़ किया जाना था, C++26 स्टैण्डर्ड वर्जन में कई नए फीचर्स और फंक्शन पर काम किया गया है. जिसमे रिफ्लेक्शन, कॉन्ट्रैक्ट्स, preconditions, postconditions, and invariants, std::execution (Sender/Receiver), इसके अलावा लैंग्वेज सिक्योरिटी, इंटीग्रिटी, फ्लेक्सिबिलिटी, और रिलायबिलिटी पर भी काम किया जा रहा है.

Leave a Reply