C++ पर ओपन सोर्स: सर्वश्रेष्ठ GitHub रिपॉजिटरी

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

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

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

अभी C++ पर ओपन-सोर्स में क्यों झांकना चाहिए?

\n\n

यदि आप C++ में लिखते हैं या अभी इसे सीखना शुरू कर रहे हैं, तो GitHub केवल कोड का भंडार नहीं है, बल्कि एक वास्तविक खजाना है। C++ पर ओपन सोर्स आपको यह देखने का अवसर देता है कि पेशेवर कैसे काम करते हैं, वे कौन से पैटर्न का उपयोग करते हैं और उच्च-लोड सिस्टम की आर्किटेक्चर कैसे डिज़ाइन करते हैं।

\n\n

इस लेख में हमने सर्वश्रेष्ठ रिपॉजिटरी एकत्र की हैं, जिनका अध्ययन हर उस व्यक्ति को करना चाहिए जो C++ में अपने कौशल को बढ़ाना चाहता है। कोई उबाऊ सिद्धांत नहीं - केवल लाइव कोड, वास्तविक प्रोजेक्ट्स और उनका उपयोग करने के सुझाव।

\n\n

इस संग्रह में आपको क्या मिलेगा?

\n
    \n
  • सीखने और प्रेरणा के लिए प्रोजेक्ट्स
  • \n
  • लाइब्रेरी जो विकास को सरल बनाती हैं
  • \n
  • अनुकूलन और डिबगिंग के लिए उपकरण
  • \n
  • कोड के वास्तविक उदाहरण जिन्हें तुरंत अनुकूलित किया जा सकता है
  • \n
\n\n

शीर्ष 7 C++ रिपॉजिटरी जो कोड के बारे में आपकी सोच बदल देंगी

\n\n

1. fmtlib/fmt — printf और iostream का आधुनिक विकल्प

\n

यदि आप बोझिल std::cout और फ़ॉर्मेटिंग में भ्रम से थक गए हैं, तो fmt लाइब्रेरी आपके लिए वरदान साबित होगी। यह Python जैसी स्ट्रिंग फ़ॉर्मेटिंग को लागू करती है, लेकिन C++ की पूर्ण टाइप सुरक्षा के साथ।

\n\n

कोड उदाहरण:

\n
#include <fmt/core.h>\n#include <vector>\n\nint main() {\n    std::vector<int> data = {1, 2, 3, 4, 5};\n    fmt::print("तत्व: {}\\n", fmt::join(data, ", "));\n    // आउटपुट: तत्व: 1, 2, 3, 4, 5\n    return 0;\n}\n
\n

यह रिपॉजिटरी इस बात का एक उत्कृष्ट उदाहरण है कि कैसे एक ओपन-सोर्स प्रोजेक्ट मानक लाइब्रेरी को बेहतर बना सकता है। कोड आसानी से पढ़ा जाता है, और प्रदर्शन printf के बराबर है।

\n\n

2. nlohmann/json — JSON के साथ काम करना जिससे रोना न आए

\n

JSON एक ऐसा फ़ॉर्मेट है जिसका सामना हर कोई करता है। nlohmann/json लाइब्रेरी C++ पर JSON पार्सिंग और जनरेशन को सहज बनाती है। यह पूरी तरह से header-only है, यानी इसे बिल्ड करने की आवश्यकता नहीं है।

\n\n

उदाहरण:

\n
#include <nlohmann/json.hpp>\nusing json = nlohmann::json;\n\nint main() {\n    json config = {\n        {"name", "सर्वर"},\n        {"port", 8080},\n        {"enabled", true}\n    };\n\n    std::string serialized = config.dump(4); // प्रिटी प्रिंट\n    std::cout << serialized << std::endl;\n\n    // पढ़ना\n    auto port = config["port"].get<int>();\n    return 0;\n}\n
\n

यह रिपॉजिटरी किसी भी C++ प्रोजेक्ट के लिए must-have है जहाँ डेटा के साथ काम करने की आवश्यकता है।

\n\n

3. facebook/folly — Facebook की उच्च-प्रदर्शन कोड के लिए लाइब्रेरी

\n

Folly (Facebook Open Source Library) घटकों का एक सेट है जो Facebook के अंदर उपयोग किया जाता है। यहाँ आपको सब कुछ मिलेगा: स्मार्ट पॉइंटर्स से लेकर कुशल कंटेनर और एसिंक्रोनस फ्रेमवर्क तक।

\n\n

अध्ययन क्यों करें:

\n
    \n
  • fbvector का कार्यान्वयन — std::vector का अनुकूलित संस्करण
  • \n
  • एसिंक्रोनस फ्रेमवर्क futures
  • \n
  • मेमोरी और स्ट्रिंग के साथ काम करने के लिए उपयोगिताएँ
  • \n
\n

Folly का कोड आधुनिक C++ और अनुकूलन पर एक पाठ्यपुस्तक है।

\n\n

4. google/leveldb — तेज़ की-वैल्यू स्टोरेज लाइब्रेरी

\n

LevelDB C++ में लिखा गया एक हल्का डेटाबेस है। इसका कोड संक्षिप्तता और दक्षता का नमूना है। यदि आप समझना चाहते हैं कि LSM-ट्री और एम्बेडेड DB कैसे काम करते हैं, तो यह रिपॉजिटरी आदर्श स्थान है।

\n\n

उपयोग का उदाहरण:

\n
#include "leveldb/db.h"\n#include <iostream>\n\nint main() {\n    leveldb::DB* db;\n    leveldb::Options options;\n    options.create_if_missing = true;\n\n    leveldb::Status status = leveldb::DB::Open(options, "/tmp/testdb", &db);\n    if (!status.ok()) std::cerr << status.ToString() << std::endl;\n\n    db->Put(leveldb::WriteOptions(), "key", "value");\n    std::string value;\n    db->Get(leveldb::ReadOptions(), "key", &value);\n    std::cout <&                

ब्लॉग

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