GitHub Copilot कोड पूरा करने के सुझावों का उपयोग करके कोड जनरेट करें

Complete

GitHub Copilot कई प्रोग्रामिंग भाषाओं और विभिन्न प्रकार के ढांचे के लिए कोड पूरा करने के सुझाव प्रदान कर सकता है, लेकिन विशेष रूप से पायथन, जावास्क्रिप्ट, टाइपस्क्रिप्ट, रूबी, गो, सी # और सी ++ के लिए अच्छी तरह से काम करता है। आपके द्वारा लिखे जा रहे कोड के संदर्भ के आधार पर कोड लाइन पूर्णता उत्पन्न होती है। आप GitHub Copilot द्वारा दिए गए सुझावों को स्वीकार, अस्वीकार या आंशिक रूप से स्वीकार कर सकते हैं।

GitHub Copilot कोड लाइन पूर्णता उत्पन्न करने के दो तरीके प्रदान करता है:

  • एक टिप्पणीसे: आप एक टिप्पणी लिखकर कोड लाइन पूर्णता उत्पन्न कर सकते हैं जो उस कोड का वर्णन करता है जिसे आप उत्पन्न करना चाहते हैं। GitHub Copilot आपके द्वारा लिखी गई टिप्पणी के आधार पर कोड पूर्ण करने के सुझाव प्रदान करता है।

  • कोडसे: आप कोड लाइन शुरू करके या पूर्ण कोड लाइन के बाद एंटर दबाकर कोड लाइन पूर्णता उत्पन्न कर सकते हैं। GitHub Copilot आपके द्वारा लिखे गए कोड के आधार पर कोड पूर्ण करने के सुझाव प्रदान करता है।

टिप्पणी से कोड लाइन पूर्णता उत्पन्न करने के लिए GitHub Copilot का उपयोग करें

GitHub Copilot टिप्पणी और आपके ऐप के मौजूदा संदर्भ के आधार पर कोड पूर्ण करने के सुझाव उत्पन्न करता है।

आप कोड स्निपेट, विधियों, डेटा संरचनाओं और अन्य कोड तत्वों का वर्णन करने के लिए टिप्पणियों का उपयोग कर सकते हैं।

मान लें कि आपके पास निम्न कोड स्निपेट है:


namespace ReportGenerator;

class QuarterlyIncomeReport
{
    static void Main(string[] args)
    {
        // create a new instance of the class
        QuarterlyIncomeReport report = new QuarterlyIncomeReport();

        // call the GenerateSalesData method

        // call the QuarterlySalesReport method
        
    }

    public void QuarterlySalesReport()
    {

        Console.WriteLine("Quarterly Sales Report");
    }
}    

उदाहरण के लिए, डेटा संरचना बनाने के लिए निम्न टिप्पणी का उपयोग किया जा सकता है:


// public struct SalesData. Include the following fields: date sold, department name, product ID, quantity sold, unit price

GitHub Copilot आपकी कोड टिप्पणी और संपादक में खुली कोड फ़ाइलों के आधार पर एक या अधिक कोड पूर्णता सुझाव उत्पन्न करता है।

स्क्रीनशॉट एक टिप्पणी के लिए कोड पूरा होने दिखा रहा है जो डेटा संरचना का वर्णन करता है।

डेटा संरचना के क्षेत्रों को घोषित करने के लिए उपयोग किए गए डेटा प्रकारों पर ध्यान दें। GitHub Copilot आपके मौजूदा कोड और कोड टिप्पणी के आधार पर डेटा प्रकार और चर नामों का चयन करता है। GitHub Copilot यह निर्धारित करने का प्रयास करता है कि एप्लिकेशन चर का उपयोग कैसे करता है और तदनुसार डेटा प्रकारों को परिभाषित करता है।

जब GitHub Copilot एक से अधिक सुझाव उत्पन्न करता है, तो आप > बटन के बाईं ओर स्थित बाएँ या दाएँ तीर (< या ) का चयन करके सुझावों के माध्यम से साइकिल चला सकते हैं। यह आपको उस सुझाव की समीक्षा करने और चयन करने की अनुमति देता है जो आपकी आवश्यकताओं के लिए सबसे उपयुक्त है।

एक कोड पूरा करने के सुझाव को स्वीकार करना ठीक है जो आप जो चाहते हैं उसके लिए सटीक मिलान नहीं है। हालांकि, सुझाव को "ठीक" करने के लिए आवश्यक परिवर्तन स्पष्ट होने चाहिए। इस मामले में, कुछ डेटा प्रकार वह नहीं हैं जो आप चाहते हैं, लेकिन आप सुझाए गए स्वतः पूर्णता को स्वीकार करने के बाद उन्हें समायोजित कर सकते हैं।

यदि सुझाए गए विकल्पों में से कोई भी आपकी आवश्यकता से मिलता-जुलता नहीं है, तो दो चीजें हैं जिन्हें आप आजमा सकते हैं। अन्य सुझावों की सूची वाला नया संपादक टैब खोलने के लिए, Ctrl + Enter कुंजियाँ दबाएँ. यह हॉटकी संयोजन एक नया टैब खोलता है जिसमें अधिकतम 10 और सुझाव होते हैं। प्रत्येक सुझाव के बाद एक बटन होता है जिसका उपयोग आप सुझाव स्वीकार करने के लिए कर सकते हैं। आपके द्वारा सुझाव स्वीकार करने के बाद टैब स्वचालित रूप से बंद हो जाता है. आपका दूसरा विकल्प सुझावों को खारिज करने और पुनः प्रयास करने के लिए Esc कुंजी दबाना है। आप GitHub Copilot के साथ काम करने के लिए अधिक संदर्भ प्रदान करने के लिए कोड टिप्पणी को समायोजित कर सकते हैं।

नोट

GitHub Copilot कभी-कभी चरणों में एक सुझाव प्रस्तावित कर सकता है। यदि ऐसा होता है, तो आप Tab कुंजी दबाने के बाद सुझाव के अतिरिक्त चरणों को देखने के लिए Enter दबा सकते हैं।

सुझाई गई डेटा संरचना को स्वीकार करने के लिए, Tab कुंजी दबाएँ या स्वीकार करेंका चयन करें.

फ़ील्ड डेटा प्रकारों को संशोधित करने के लिए, निम्नानुसार अपना कोड अद्यतन करें:

public struct SalesData
{
    public DateOnly dateSold;
    public string departmentName;
    public int productID;
    public int quantitySold;
    public double unitPrice;
}

कोड पूरा करने के सुझावों में त्वरित समायोजन करने से यह सुनिश्चित करने में मदद मिलती है कि आप अपना इच्छित कोड बना रहे हैं। अपनी विकास प्रक्रिया में जल्दी सुधार करना विशेष रूप से महत्वपूर्ण है जब आपके कोडबेस के बड़े हिस्से को अभी भी विकसित करने की आवश्यकता है। बाद के कोड पूर्णताएं आपके द्वारा पहले से लिखे गए कोड पर आधारित होती हैं, इसलिए यह सुनिश्चित करना महत्वपूर्ण है कि आपका कोड यथासंभव सटीक हो।

टिप्पणी से कोड लाइन पूर्णता उत्पन्न करने के लिए GitHub Copilot का उपयोग करें

GitHub Copilot टिप्पणी और आपके ऐप के मौजूदा संदर्भ के आधार पर कोड पूर्ण करने के सुझाव उत्पन्न करता है। आप कोड स्निपेट, विधियों, डेटा संरचनाओं और अन्य कोड तत्वों का वर्णन करने के लिए टिप्पणियों का उपयोग कर सकते हैं।

अभ्यास के इस खंड को पूरा करने के लिए निम्न चरणों का उपयोग करें:

  1. Program.cs फ़ाइल में, Main विधि के नीचे दो रिक्त कोड पंक्तियाँ बनाएँ।

  2. परीक्षण डेटा जनरेट करने के लिए उपयोग किया जा सकता है जो किसी डेटा संरचना बनाने के लिए, निम्न कोड टिप्पणी बनाएँ, और उसके बाद Enter दबाएँ:

    // public struct SalesData. Include the following fields: date sold, department name, product ID, quantity sold, unit price
    

    GitHub Copilot आपकी कोड टिप्पणी और आपके ऐप में मिलने वाले किसी भी मौजूदा कोड के आधार पर एक या अधिक कोड पूरा करने के सुझाव जनरेट करता है।

  3. GitHub Copilot द्वारा प्रदान किए गए कोड पूर्ण सुझावों की समीक्षा करने के लिए एक मिनट का समय लें।

    नोट

    यदि GitHub Copilot डेटा संरचना के बजाय किसी विधि के लिए सुझाव उत्पन्न करता है, तो सार्वजनिक str टाइप करें और कोड पूरा होने के सुझाव के अपडेट होने की प्रतीक्षा करें। GitHub Copilot अपने सुझावों को बेहतर बनाने के लिए अतिरिक्त जानकारी का उपयोग करता है।

    स्क्रीनशॉट एक टिप्पणी के लिए कोड पूरा होने दिखा रहा है जो डेटा संरचना का वर्णन करता है।

    डेटा संरचना के क्षेत्रों को घोषित करने के लिए उपयोग किए गए डेटा प्रकारों पर ध्यान दें। GitHub Copilot आपके मौजूदा कोड और कोड टिप्पणी के आधार पर डेटा प्रकार और चर नामों का चयन करता है। GitHub Copilot यह निर्धारित करने का प्रयास करता है कि एप्लिकेशन चर का उपयोग कैसे करता है और तदनुसार डेटा प्रकारों को परिभाषित करता है।

    जब GitHub Copilot एक से अधिक सुझाव उत्पन्न करता है, तो आप > बटन के बाईं ओर स्थित बाएँ या दाएँ तीर (< या ) का चयन करके सुझावों के माध्यम से साइकिल चला सकते हैं। यह आपको उस सुझाव की समीक्षा करने और चयन करने की अनुमति देता है जो आपकी आवश्यकताओं के लिए सबसे उपयुक्त है।

    एक कोड पूरा करने के सुझाव को स्वीकार करना ठीक है जो आप जो चाहते हैं उसके लिए सटीक मिलान नहीं है। हालांकि, सुझाव को "ठीक" करने के लिए आवश्यक परिवर्तन स्पष्ट होने चाहिए। इस मामले में, कुछ डेटा प्रकार वह नहीं हैं जो आप चाहते हैं, लेकिन आप सुझाए गए स्वतः पूर्णता को स्वीकार करने के बाद उन्हें समायोजित कर सकते हैं।

    यदि सुझाए गए विकल्पों में से कोई भी आपकी आवश्यकता से मिलता-जुलता नहीं है, तो दो चीजें हैं जिन्हें आप आजमा सकते हैं। अन्य सुझावों की सूची वाला नया संपादक टैब खोलने के लिए, Ctrl + Enter कुंजियाँ दबाएँ. यह हॉटकी संयोजन एक नया टैब खोलता है जिसमें अधिकतम 10 और सुझाव होते हैं। प्रत्येक सुझाव के बाद एक बटन होता है जिसका उपयोग आप सुझाव स्वीकार करने के लिए कर सकते हैं। आपके द्वारा सुझाव स्वीकार करने के बाद टैब स्वचालित रूप से बंद हो जाता है. आपका दूसरा विकल्प सुझावों को खारिज करने और पुनः प्रयास करने के लिए Esc कुंजी दबाना है। आप GitHub Copilot के साथ काम करने के लिए अधिक संदर्भ प्रदान करने के लिए कोड टिप्पणी को समायोजित कर सकते हैं।

    नोट

    GitHub Copilot कभी-कभी चरणों में एक सुझाव प्रस्तावित कर सकता है। यदि ऐसा होता है, तो आप Tab कुंजी दबाने के बाद सुझाव के अतिरिक्त चरणों को देखने के लिए Enter दबा सकते हैं।

  4. सुझाई गई डेटा संरचना को स्वीकार करने के लिए, Tab कुंजी दबाएँ या स्वीकार करेंका चयन करें.

  5. फ़ील्ड डेटा प्रकारों को संशोधित करने के लिए, निम्नानुसार अपना कोड अद्यतन करें:

    public struct SalesData
    {
        public DateOnly dateSold;
        public string departmentName;
        public int productID;
        public int quantitySold;
        public double unitPrice;
    }
    

    कोड पूरा करने के सुझावों में त्वरित समायोजन करने से यह सुनिश्चित करने में मदद मिलती है कि आप अपना इच्छित कोड बना रहे हैं। अपनी विकास प्रक्रिया में जल्दी सुधार करना विशेष रूप से महत्वपूर्ण है जब आपके कोडबेस के बड़े हिस्से को अभी भी विकसित करने की आवश्यकता है। कोड पूर्णता आपके मौजूदा कोड पर आधारित होती है, इसलिए यह सुनिश्चित करना महत्वपूर्ण है कि आपका कोड यथासंभव सटीक है।

  6. SalesData डेटा संरचना के नीचे दो रिक्त कोड पंक्तियाँ बनाएँ।

  7. SalesData डेटा संरचना का उपयोग कर परीक्षण डेटा जनरेट करता है एक विधि बनाने के लिए, निम्न कोड टिप्पणी लिखें, और उसके बाद Enter दबाएँ:

    /* the GenerateSalesData method returns 1000 SalesData records. It assigns random values to each field of the data structure */
    
  8. GitHub Copilot द्वारा प्रदान किए गए कोड पूर्ण सुझावों की समीक्षा करने के लिए एक मिनट का समय लें।

    ध्यान दें कि GenerateSalesData विधि SalesData ऑब्जेक्ट्स की एक सरणी वापस करने के लिए डिज़ाइन की गई है। विधि परीक्षण डेटा के 1,000 रिकॉर्ड उत्पन्न करती है, जिसमें SalesData डेटा संरचना के प्रत्येक क्षेत्र को यादृच्छिक मान सौंपे जाते हैं।

    स्क्रीनशॉट एक टिप्पणी के लिए कोड पूरा होने दिखा रहा है जो एक विधि का वर्णन करता है।

    आपको हमेशा GitHub Copilot और GitHub Copilot Chat द्वारा प्रस्तावित सुझावों की समीक्षा करनी चाहिए, भले ही वे सही दिखाई दें।

    नोट

    यदि GitHub Copilot पूर्ण GenerateSalesData विधि के बजाय एकल कोड लाइन का सुझाव देता है, तो GitHub Copilot सुझाव टैब खोलने के लिए Ctrl + Enter दबाएं। नए टैब पर दिए गए सुझावों की समीक्षा करें. अगले चरण पर, सुझाव स्वीकार करने के लिए "सुझाव # स्वीकार करें" बटन का उपयोग करें। GitHub Copilot अवसर पर वृद्धिशील रूप से सुझाव प्रस्तुत करता है। यद्यपि आप कोड पूर्णता को वृद्धिशील रूप से स्वीकार कर सकते हैं, स्वीकार करने या त्यागने का निर्णय लेने से पहले पूर्ण सुझाव की समीक्षा करने के लिए GitHub Copilot सुझाव टैब का उपयोग करना बेहतर है।

  9. कोड पूरा करने के सुझावों को स्क्रॉल करें और आवश्यकताओं के लिए सबसे अच्छा मिलान चुनें।

  10. कोड पूर्ण होने को स्वीकार करने के लिए, Tab कुंजी दबाएँ.

    ध्यान दें कि कोड पूर्णता सुझाव DateSold फ़ील्ड जनरेट करने के लिए उपयोग किए गए कोड में सिंटैक्स त्रुटि शामिल है। DateOnly तीन पूर्णांक मानों को स्वीकार करता है जिन्हें सही क्रम में सूचीबद्ध किया जाना चाहिए: वर्ष, माह, दिन.

  11. DateSold फ़ील्ड जनरेट करने के लिए उपयोग किए गए कोड के लिए एकल वर्ष निर्दिष्ट करने के लिए, निम्नानुसार कोड पंक्ति अद्यतन करें:

    salesData[i].DateSold = new DateOnly(2023, random.Next(1, 13), random.Next(1, 29));
    
  12. यदि आवश्यक हो, तो निम्न कोड स्निपेट से मेल खाने के लिए अन्य कोड पंक्तियाँ समायोजित करें:

    public SalesData[] GenerateSalesData()
    {
        SalesData[] salesData = new SalesData[1000];
        Random random = new Random();
    
        for (int i = 0; i < salesData.Length; i++)
        {
            salesData[i].dateSold = new DateOnly(2023, random.Next(1, 13), random.Next(1, 29));
            salesData[i].departmentName = "Department " + random.Next(1, 11);
            salesData[i].productID = random.Next(1, 101);
            salesData[i].quantitySold = random.Next(1, 101);
            salesData[i].unitPrice = random.NextDouble() * 100;
        }
    
        return salesData;
    }
    

कोड टिप्पणियों से कोड उत्पन्न करने की क्षमता GitHub Copilot की एक शक्तिशाली विशेषता है। केवल दो टिप्पणियों के साथ, आप एक डेटा संरचना और एक विधि उत्पन्न करने में सक्षम थे जो परीक्षण डेटा उत्पन्न करता है।

कोड लाइन पूर्णता उत्पन्न करने के लिए GitHub Copilot का उपयोग करें

GitHub Copilot आपके द्वारा दर्ज किए गए कोड के आधार पर कोड लाइन पूर्णता उत्पन्न कर सकता है। आप दो तरीकों से कोड लाइन पूर्णता उत्पन्न कर सकते हैं:

  • एक कोड लाइन दर्ज करना शुरू करें, और फिर GitHub Copilot के लिए प्रतीक्षा करें कि वह आपकी अधूरी कोड लाइन के लिए स्वतः पूर्णता का सुझाव दे।
  • एक पूर्ण कोड लाइन दर्ज करें, Enter कुंजी दबाएं, और फिर अगली कोड लाइन के लिए स्वतः पूर्णता का सुझाव देने के लिए GitHub Copilot की प्रतीक्षा करें।

नोट

GitHub Copilot आपके द्वारा दर्ज किए गए कोड और आपके ऐप के भीतर कोड द्वारा परिभाषित संदर्भ के आधार पर सुझाए गए कोड पूर्णता उत्पन्न करता है। आपके ऐप में जितना अधिक कोड उपलब्ध होगा, प्रतिक्रिया उत्पन्न करते समय GitHub Copilot के पास उतना ही अधिक संदर्भ होगा। GitHub Copilot आपके मौजूदा कोड पर प्रतिक्रियाओं को आधार बना सकता है, इसलिए आपके कोड की गुणवत्ता महत्वपूर्ण है। जैसे-जैसे मौजूदा कोड की मात्रा और गुणवत्ता बढ़ती है, वैसे-वैसे GitHub Copilot द्वारा सुझाई गई कोड लाइन पूर्णता की गुणवत्ता और विश्वसनीयता भी बढ़ती है। GitHub Copilot सामान्य प्रोग्रामिंग कार्यों और पैटर्न के लिए कोड लाइन पूर्णता उत्पन्न करने में अच्छा है, खासकर जब संबंधित घटकों का अनुक्रम उत्पन्न करने की आवश्यकता होती है।

अभ्यास के इस भाग में, आप QuarterlySalesReport विधि पर काम करते हैं।

यहां वे कार्य दिए गए हैं जिन्हें आपको पूरा करने की आवश्यकता है:

  • विधि कन्स्ट्रक्टर को एक पैरामीटर के साथ अपडेट करें जो आपके SalesData ऑब्जेक्ट्स के संग्रह को स्वीकार करता है।
  • त्रैमासिक रिपोर्ट के लिए बिक्री डेटा संसाधित करने वाली कोड लाइन पूर्णता उत्पन्न करने के लिए GitHub Copilot का उपयोग करें।
  • ऐप चलाएं और तिमाही बिक्री रिपोर्ट की समीक्षा करें।

अभ्यास के इस खंड को पूरा करने के लिए निम्न चरणों का उपयोग करें:

  1. QuarterlySalesReport के लिए विधि निर्माता निम्नानुसार अद्यतन करें:

    public void QuarterlySalesReport(SalesData[] salesData)
    
  2. उस कोड पर विचार करने के लिए एक मिनट का समय लें जिसे आपको विकसित करने की आवश्यकता है।

    अवधारणा सीधे आगे है। आप चाहते हैं कि आपका कोड आपके बिक्री डेटा के आधार पर त्रैमासिक बिक्री की गणना करे और फिर एक रिपोर्ट लिखे। ऐसा करने के लिए, आपके कोड को यह करने की आवश्यकता है:

    • salesData संग्रह के माध्यम से पुनरावृति करें।
    • बेची गई मात्रा और इकाई मूल्य के आधार पर प्रत्येक बिक्री के मूल्य की गणना करें।
    • बिक्री दिनांक का उपयोग यह निर्धारित करने के लिए करें कि बिक्री किस तिमाही से संबंधित है.
    • प्रत्येक तिमाही के लिए बिक्री का योग करें।
    • तिमाही के अनुसार बिक्री की रिपोर्ट लिखें।

    एक विकल्प foreach लूप के लिए कोड दर्ज करना शुरू करना है और फिर देखें कि GitHub Copilot क्या सुझाव देता है।

  3. QuarterlySalesReport विधि में, कोड ब्लॉक के शीर्ष पर एक नई कोड पंक्ति बनाएँ।

    नई कोड लाइन और Console.WriteLine()वाली कोड लाइन के बीच कम से कम एक खाली कोड लाइन होनी चाहिए।

  4. कोड लाइन पूर्णता उत्पन्न करने के लिए, foreach ( टाइप करें और फिर कोड लाइन पूरा करने के विकल्पों का सुझाव देने के लिए GitHub Copilot की प्रतीक्षा करें।

  5. GitHub Copilot द्वारा सुझाए गए कोड पूर्णता की समीक्षा करें।

    स्क्रीनशॉट foreach लूप के लिए कोड पूर्णता दिखा रहा है।

    सुझाया गया कोड पूर्णता वह नहीं है जो आप चाहते थे।

    हालांकि GitHub Copilot एक foreach लूप का सुझाव देता है जो salesDataके माध्यम से पुनरावृत्त होता है, लूप के अंदर कोई विश्लेषण या गणना नहीं है। सुझाए गए कोड में ऐसे कथन शामिल Console.WriteLine हैं जिन्हें आप नहीं चाहते हैं या जिनकी आवश्यकता नहीं है।

  6. विचार करने के लिए एक मिनट का समय लें कि GitHub Copilot Console.WriteLine कथनों का सुझाव क्यों दे रहा है।

    याद रखें कि GitHub Copilot आपके कोड के संदर्भ के आधार पर कोड पूर्ण करने के सुझाव उत्पन्न करता है। इस मामले में, आपके पास GitHub Copilot पर विचार करने के लिए वास्तव में बहुत अधिक कोड नहीं है। और स्थिति बदतर हो जाती है।

    GitHub Copilot तुमच्या पद्धतीत दिसणारा कोड हे Console.WriteLine स्टेटमेंट आहे. विधि के भीतर कोई अन्य संदर्भ उपलब्ध नहीं है और आपके कोडबेस में कोई समान तरीके नहीं हैं, GitHub Copilot ने निष्कर्ष निकाला है कि आप लूप के अंदर Console.WriteLineचाहते हैं।

    GitHub Copilot सबसे अच्छा काम करता है जब आपका कोड साफ और केंद्रित होता है। यदि आप अपने कोड में अनावश्यक कोड टिप्पणियां या कथन देखते हैं, तो आप GitHub Copilot कोड पूर्णताओं का उपयोग करने का प्रयास करने से पहले उन्हें हटाना चाह सकते हैं।

  7. GitHub Copilot को एक और कोशिश देने से पहले अपना कोड साफ करने के लिए, निम्न चरणों को पूरा करें:

    • सुझाए गए foreach ( कोड पूर्ण होने को रद्द करें।
    • आपके द्वारा दर्ज किए गए आंशिक foreach ( कथन को हटाएँ.
    • अपनी Console.WriteLine विधि से QuarterlySalesReport कथन हटाएं।

    आता तुम्हाला GitHub Copilot पुन्हा प्रयत्न करण्यासाठी तयार असणे चाहिए.

  8. सुनिश्चित करें कि आपकी QuarterlySalesReport विधि निम्न कोड के जैसा दिखता है:

    public void QuarterlySalesReport(SalesData[] salesData)
    {
    
    
    }
    
  9. QuarterlySalesReport विधि के अंदर एक रिक्त कोड पंक्ति पर कर्सर रखें, और उसके बाद Enter दबाएँ।

    GitHub Copilot ला सुरुवात केलेले कोड पूर्ण करण्यात सोडणे सोडले जाऊ शकते.

  10. सुझाए गए कोड पूर्णताओं की समीक्षा करने के लिए एक मिनट का समय लें।

    महत्त्वपूर्ण

    आपको प्राप्त होने वाली कोड पूर्णता निम्न स्क्रीनशॉट में दिखाए गए सुझावों से भिन्न होने की संभावना है। हालांकि GitHub Copilot के पास काम करने के लिए केवल एक विधि नाम और पैरामीटर है, जो उपयोगी सुझाव उत्पन्न करने के लिए पर्याप्त हो सकता है। आपको ऐसे सुझाव दिखाई देने चाहिए जो तिमाही के अनुसार बिक्री की गणना करते हैं। सुझावों को अस्वीकार करना और पुनः प्रयास करना अलग-अलग परिणाम प्रदान कर सकता है।

    एक कोड पूरा करने का सुझाव दिखाने वाला स्क्रीनशॉट जो रिपोर्ट के लिए डेटा संसाधित करता है.

    आप > या <का चयन करके सुझावों के माध्यम से चक्र कर सकते हैं।

    ध्यान दें कि सुझाया गया कोड पूर्णता बिक्री डेटा के माध्यम से दोहराता है और त्रैमासिक बिक्री गणना करता है।

  11. सुझाए गए कोड पूर्णता को स्वीकार करने के लिए, Tab कुंजी दबाएँ.

    सुझाया गया कोड पूर्णता बिक्री डेटा के आधार पर तिमाही आय की गणना और प्रदर्शन करती है।

    // create a dictionary to store the quarterly sales data
    Dictionary<string, double> quarterlySales = new Dictionary<string, double>();
    
    // iterate through the sales data
    foreach (SalesData data in salesData)
    {
        // calculate the total sales for each quarter
        string quarter = GetQuarter(data.dateSold.Month);
        double totalSales = data.quantitySold * data.unitPrice;
    
        if (quarterlySales.ContainsKey(quarter))
        {
            quarterlySales[quarter] += totalSales;
        }
        else
        {
            quarterlySales.Add(quarter, totalSales);
        }
    }
    
    // display the quarterly sales report
    Console.WriteLine("Quarterly Sales Report");
    Console.WriteLine("----------------------");
    foreach (KeyValuePair<string, double> quarter in quarterlySales)
    {
        Console.WriteLine(entry.Key + ": $" + entry.Value);
    }
    
    
  12. ध्यान दें कि GetQuarter विधि बिक्री की तिमाही निर्धारित करने के लिए बिक्री के महीने का उपयोग करती है।

    GetQuarter विधि आगे बनाई गई है।

  13. QuarterlySalesReport विधि के नीचे दो रिक्त कोड पंक्तियाँ बनाएँ।

  14. ध्यान दें कि GitHub Copilot GetQuarter विधि के लिए एक कोड पूर्णता का सुझाव देता है।

    QuarterlySalesReport विधि द्वारा प्रदान किए गए संदर्भ के साथ, GitHub Copilot आसानी से GetQuarter विधि के लिए एक कोड पूर्णता उत्पन्न कर सकता है जो बिक्री के महीने के आधार पर तिमाही निर्धारित करता है।

  15. GetQuarter विधि के लिए सुझाए गए कोड लाइन पूर्णता की समीक्षा करने के लिए एक मिनट का समय लें।

    स्क्रीनशॉट GetQuarter विधि के लिए कोड पूर्णता दिखा रहा है।

  16. सुझाए गए कोड पूर्णता को स्वीकार करने के लिए, Tab कुंजी दबाएँ.

    public string GetQuarter(int month)
    {
        if (month >= 1 && month <= 3)
        {
            return "Q1";
        }
        else if (month >= 4 && month <= 6)
        {
            return "Q2";
        }
        else if (month >= 7 && month <= 9)
        {
            return "Q3";
        }
        else
        {
            return "Q4";
        }
    }
    
  17. ध्यान दें कि Main विधि को पूरा करने से पहले आप कोड चला सकते हैं की आवश्यकता है।

    आप अपने कोड को अपडेट करने के लिए Main विधि में टिप्पणियों का उपयोग कर सकते हैं।

  18. कर्सर को // call the GenerateSalesData method कोड टिप्पणी के अंत में स्थित करें, और तब Enter दबाएँ.

    GitHub Copilot विधि के लिए कॉलिंग स्टेटमेंट प्रस्तावित करने के लिए टिप्पणी का उपयोग करता है।

  19. समीक्षा करें और फिर GitHub Copilot द्वारा सुझाए गए कोड पूर्णता को स्वीकार करें।

  20. // call the QuarterlySalesReport method कोड टिप्पणी के लिए प्रक्रिया को दोहराएं।

  21. आपकी Main विधि में निम्न कोड होना चाहिए:

    static void Main(string[] args)
    {
        // create a new instance of the class
        QuarterlyIncomeReport report = new QuarterlyIncomeReport();
    
        // call the GenerateSalesData method
        SalesData[] salesData = report.GenerateSalesData();
    
        // call the QuarterlySalesReport method
        report.QuarterlySalesReport(salesData);
    }
    
    
  22. अपनी QuarterlyIncomeReport कक्षा में कोड की समीक्षा करने के लिए एक मिनट का समय लें।

    namespace ReportGenerator
    {
        class QuarterlyIncomeReport
        {
            static void Main(string[] args)
            {
                // create a new instance of the class
                QuarterlyIncomeReport report = new QuarterlyIncomeReport();
    
                // call the GenerateSalesData method
                SalesData[] salesData = report.GenerateSalesData();
    
                // call the QuarterlySalesReport method
                report.QuarterlySalesReport(salesData);
            }
    
            /* public struct SalesData includes the following fields: date sold, department name, product ID, quantity sold, unit price */
            public struct SalesData
            {
                public DateOnly dateSold;
                public string departmentName;
                public int productID;
                public int quantitySold;
                public double unitPrice;
            }
    
            /* the GenerateSalesData method returns 1000 SalesData records. It assigns random values to each field of the data structure */
            public SalesData[] GenerateSalesData()
            {
                SalesData[] salesData = new SalesData[1000];
                Random random = new Random();
    
                for (int i = 0; i < 1000; i++)
                {
                    salesData[i].dateSold = new DateOnly(2023, random.Next(1, 13), random.Next(1, 29));
                    salesData[i].departmentName = "Department " + random.Next(1, 11);
                    salesData[i].productID = random.Next(1, 101);
                    salesData[i].quantitySold = random.Next(1, 101);
                    salesData[i].unitPrice = random.NextDouble() * 100;
                }
    
                return salesData;
            }
    
            public void QuarterlySalesReport(SalesData[] salesData)
            {
                // create a dictionary to store the quarterly sales data
                Dictionary<string, double> quarterlySales = new Dictionary<string, double>();
    
                // iterate through the sales data
                foreach (SalesData data in salesData)
                {
                    // calculate the total sales for each quarter
                    string quarter = GetQuarter(data.dateSold.Month);
                    double totalSales = data.quantitySold * data.unitPrice;
    
                    if (quarterlySales.ContainsKey(quarter))
                    {
                        quarterlySales[quarter] += totalSales;
                    }
                    else
                    {
                        quarterlySales.Add(quarter, totalSales);
                    }
                }
    
                // display the quarterly sales report
                Console.WriteLine("Quarterly Sales Report");
                Console.WriteLine("----------------------");
                foreach (KeyValuePair<string, double> quarter in quarterlySales)
                {
                    Console.WriteLine(entry.Key + ": $" + entry.Value);
                }
            }
    
            public string GetQuarter(int month)
            {
                if (month >= 1 && month <= 3)
                {
                    return "Q1";
                }
                else if (month >= 4 && month <= 6)
                {
                    return "Q2";
                }
                else if (month >= 7 && month <= 9)
                {
                    return "Q3";
                }
                else
                {
                    return "Q4";
                }
            }
        }
    }
    
    

    यह कोड लगभग पूरी तरह से, GitHub Copilot द्वारा उत्पन्न कोड लाइन पूर्णता का उपयोग करके बनाया गया था। हालाँकि, कोड सुझावों की आपकी समीक्षा महत्वपूर्ण है, और सुधार आवश्यक थे। आपको यह सुनिश्चित करने के लिए GitHub Copilot द्वारा सुझाए गए कोड पूर्णताओं की हमेशा समीक्षा करनी चाहिए कि कोड आपकी आवश्यकताओं को पूरा करता है।

  23. रिपोर्ट आउटपुट की समीक्षा करने के लिए, ऐप्लिकेशन चलाएँ.

    Visual Studio कोड में कोई टर्मिनल विंडो खोलें, और उसके बाद निम्न आदेश दर्ज करें:

    dotnet run
    

    आउटपुट को त्रैमासिक आय रिपोर्ट प्रदर्शित करनी चाहिए, जिसमें प्रत्येक विभाग के लिए विभाग का नाम, तिमाही और आय और परीक्षण डेटा में दर्शाई गई तिमाही दिखाई देनी चाहिए।

  24. टर्मिनल विंडो में आउटपुट की समीक्षा करें।

    यद्यपि त्रैमासिक परिणाम यादृच्छिक सांख्यिक मानों पर आधारित होते हैं, आपको निम्न आउटपुट के समान स्वरूपित रिपोर्ट देखनी चाहिए:

    
    Quarterly Sales Report
    ----------------------
    Q3: $635637.5019563352
    Q4: $672247.315297204
    Q2: $667269.194630603
    Q1: $642769.2700531208
    
    

सारांश

कोड लाइन पूर्णता GitHub Copilot की एक शक्तिशाली विशेषता है जो आपको जल्दी और कुशलता से कोड उत्पन्न करने में मदद कर सकती है। आप जिस कोड को जनरेट करना चाहते हैं उसका वर्णन करने के लिए टिप्पणियों का उपयोग करके, आप न्यूनतम प्रयास के साथ डेटा संरचनाएं, विधियाँ और अन्य कोड तत्व बना सकते हैं। इसके अतिरिक्त, GitHub Copilot आपके द्वारा दर्ज किए गए कोड के आधार पर कोड लाइन पूर्णता उत्पन्न कर सकता है, जिससे आप आसानी से जटिल एप्लिकेशन बना सकते हैं।