C# में ओपन सोर्स योगदान: कहां से शुरू करें और पागल न हों

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

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

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

ओपन सोर्स डरावना नहीं, बल्कि फायदेमंद क्यों है?

\n\n

कई डेवलपर्स, खासकर C# वाले, ओपन सोर्स को संदेह की नजर से देखते हैं। ऐसा लगता है कि वहां केवल गुरु बैठे हैं, जो आपके कोड की आलोचना करने का इंतजार कर रहे हैं। असल में, ओपन सोर्स योगदान कौशल बढ़ाने, बड़ी टीम में काम करने का अनुभव प्राप्त करने और दुनिया भर में दोस्त बनाने का सबसे अच्छा तरीका है।

\n\n

मैं खुद लंबे समय तक अपना पहला Pull Request बनाने से डरता था। मैंने सोचा: "मैं कौन होता हूं, जो पेशेवरों द्वारा लिखे गए कोड में दखल दूं?" फिर मैंने डॉक्यूमेंटेशन में एक टाइपो ठीक किया - और चल पड़ा। अब मेरे पास विभिन्न C# प्रोजेक्ट्स में 50 से अधिक मर्ज हैं। और मैं बताना चाहता हूं कि बिना अनावश्यक तनाव के ओपन सोर्स में योगदान कैसे शुरू करें।

\n\n

चरण 1. अपनी "सैंडबॉक्स" खोजें

\n\n

सीधे ASP.NET Core या Roslyn के कोर में न घुसें। छोटे से शुरू करें। यहां तीन प्रकार के प्रोजेक्ट हैं जहां आपका खुले दिल से स्वागत किया जाएगा:

\n\n
    \n
  • C# के लिए लाइब्रेरीज़ - GitHub पर इनकी हजारों हैं। टैग csharp, dotnet, library से खोजें।
  • \n
  • डेवलपर टूल्स - कोड एनालाइज़र, जनरेटर, उपयोगिताएँ।
  • \n
  • डॉक्यूमेंटेशन - हाँ, यह भी ओपन सोर्स है। और अक्सर इसमें सबसे ज्यादा कमियां होती हैं।
  • \n
\n\n

प्रोजेक्ट खोजने का एक शानदार तरीका GitHub पर जाकर सर्च में label:"good first issue" language:csharp टाइप करना है। ये शुरुआती लोगों के लिए विशेष लेबल हैं। ऐसे कार्यों को विशेष रूप से सरल और समझने योग्य चिह्नित किया जाता है।

\n\n

चरण 2. टूल्स को समझें

\n\n

कोड लिखने से पहले, सुनिश्चित करें कि आपके पास है:

\n\n
    \n
  • Git (अधिमानतः कंसोल के माध्यम से, GUI नहीं)
  • \n
  • Visual Studio या Rider (Community Edition काम करेगा)
  • \n
  • GitHub अकाउंट
  • \n
  • git clone, git branch, git commit, git push की बुनियादी समझ
  • \n
\n\n

अगर Git में अभी महारत नहीं है - कोई बात नहीं। बस प्रोजेक्ट का फोर्क करें, GitHub इंटरफ़ेस के माध्यम से बदलाव करें, और वहां से Pull Request बनाएं। पहली बार के लिए यह सबसे आसान तरीका है।

\n\n

चरण 3. बग या फीचर खोजें

\n\n

मान लीजिए आपने एक प्रोजेक्ट चुना। आगे क्या करें? Issues टैब खोलें और इन लेबल वाले कार्य खोजें:

\n\n
    \n
  • good first issue
  • \n
  • help wanted
  • \n
  • beginner
  • \n
  • documentation
  • \n
\n\n

अगर कुछ नहीं मिला - तो कमेंट में लिखने में संकोच न करें: "नमस्ते! मैं नौसिखिया हूं, मदद करना चाहता हूं। क्या कोई सरल काम है?" मेरा विश्वास करें, मेंटेनर आमतौर पर बहुत मिलनसार होते हैं। वे भी कभी शुरुआत करते थे।

\n\n

चरण 4. कोड लिखें (उदाहरण सहित)

\n\n

कल्पना करें कि आपको एक बग मिला: स्ट्रिंग्स के लिए एक्सटेंशन मेथड में null केस हैंडल नहीं किया गया है। यह कुछ इस तरह दिख सकता है।

\n\n

मूल कोड (बग के साथ):

\n\n
public static class StringExtensions\n{\n    public static string Reverse(this string input)\n    {\n        char[] chars = input.ToCharArray();\n        Array.Reverse(chars);\n        return new string(chars);\n    }\n}
\n\n

आपका फिक्स:

\n\n
public static class StringExtensions\n{\n    public static string Reverse(this string input)\n    {\n        if (input == null)\n            throw new ArgumentNullException(nameof(input));\n\n        char[] chars = input.ToCharArray();\n        Array.Reverse(chars);\n        return new string(chars);\n    }\n}
\n\n

देखा? कुछ भी अलौकिक नहीं। बस null की जांच जोड़ी और सही अपवाद फेंका। यह पहले से ही एक योग्य ओपन सोर्स योगदान है।

\n\n

चरण 5. यूनिट टेस्ट लिखें

\n\n

अच्छा अभ्यास है कि आप अपने कोड के साथ टेस्ट भी जोड़ें। xUnit का उपयोग करके हमारे फिक्स का एक उदाहरण यहां दिया गया है:

\n\n
public class StringExtensionsTests\n{\n    [Fact]\n    public void Reverse_ValidString_ReturnsReversed()\n    {\n        var result = "hello".Reverse();\n        Assert.Equal("olle                

ब्लॉग

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