एआई उत्पादों ने आधुनिक समय में सॉफ्टवेयर विकास या कोडिंग में क्रांति ला दी है। AI का उपयोग करके, हम स्वचालित रूप से प्रोग्रामिंग कोड उत्पन्न कर सकते हैं और उन्हें सही और अनुकूलित कर सकते हैं कोड रीफैक्टरिंग . इस लेख में, हम रिफैक्टरिंग प्रक्रिया का पता लगाते हैं और देखते हैं कि आप यह कैसे कर सकते हैं रेफ्रेक्टर कोड के लिए कोपायलट का उपयोग करें .
कोड रीफैक्टरिंग क्या है?
सॉफ्टवेयर या एप्लिकेशन डेवलपमेंट में, कोड रिफैक्टरिंग का तात्पर्य प्रोग्राम सोर्स कोड को उसकी मूल कार्यक्षमता को बनाए रखते हुए पुनर्निर्माण या पुनर्व्यवस्थित करना है। इस प्रक्रिया का उद्देश्य सॉफ़्टवेयर की संरचना और डिज़ाइन में सुधार करना और जटिलता को कम करना है। कोड रीफैक्टरिंग में एआई के एकीकरण ने हमें सॉफ्टवेयर प्रदर्शन के मुद्दों को तुरंत पहचानने और समग्र दक्षता में सुधार के लिए जटिल एल्गोरिदम को आसान बनाने में मदद की है।
कोपायलट कोड को दोबारा बनाने में कैसे मदद कर सकता है?
यह कोड के एक विशेष अनुभाग का विश्लेषण कर सकता है और जटिलता को कम करने के लिए इसकी संरचना को एक स्वच्छ और उपयोगकर्ता के अनुकूल प्रारूप में बेहतर बनाने के लिए सुझाव प्रदान कर सकता है। प्रदान की गई सिफारिशें निम्नलिखित पर आधारित हैं:
- मौजूदा कोड के साथ समस्याओं की पहचान करें: डुप्लिकेट कोड, अप्रयुक्त या अस्पष्ट चर इत्यादि को इंगित करके पुन: सक्रिय किए जाने वाले अनुभागों या क्षेत्रों को हाइलाइट करने के लिए कोपायलट संपूर्ण कोड फ़ाइल को स्कैन करता है।
- कुशल विकल्प सुझाएँ: कोड को रीफैक्टर करते समय, कोपायलट मौजूदा कोड का विश्लेषण करता है और कुशल विकल्प सुझाता है जो समान परिणाम दे सकते हैं लेकिन कोड को साफ-सुथरा बनाते हैं। इन अनुशंसाओं में चर, विधियों और डेटा संरचनाओं के नामकरण के लिए कुशल भाषा का उपयोग शामिल है।
- रखरखाव योग्य कोड सुनिश्चित करें: वास्तविक समय की प्रतिक्रिया हमें किसी भी बग को शामिल करने से बचने में मदद करती है। सुझाव आम तौर पर प्रोग्रामिंग सिद्धांतों की सर्वोत्तम प्रथाओं पर आधारित होते हैं जो उचित कोड संरचना को बनाए रखने में मदद कर सकते हैं, जिससे दूसरों के लिए इसे समझना और ज़रूरत पड़ने पर संशोधित करना आसान हो जाता है।
कोपायलट टू रेफ्रेक्टर कोड का उपयोग कैसे करें
रीफैक्टरिंग के लिए कोपायलट का उपयोग करने के लिए, हम शुरुआत कर सकते हैं GitHub Copilot स्थापित करना संबंधित भाषा के लिए एक्सटेंशन (वीएस कोड, पायथन, आदि)। उदाहरण के लिए, यदि हम पायथन में लिखे गए स्रोत कोड का पुनर्निर्माण करना चाहते हैं, तो हम कोपायलट प्लगइन स्थापित कर सकते हैं:
परिवर्तन फ़ाइल दिनांक विंडोज़ 10
- इंटीग्रेटेड डेवलपमेंट एनवायरमेंट या आईडीई (जावास्क्रिप्ट या पायथन) में सेटिंग्स विकल्प खोलने के लिए क्लिक करें।
- बाईं ओर प्लगइन विकल्प पर क्लिक करें।
- पर क्लिक करें बाजार विकल्प चुनें और खोजें गिटहब कोपायलट लगाना।
- एक बार स्थित हो जाने पर, पर क्लिक करें स्थापित करना प्लगइन इंस्टॉल करने के लिए.
- इंस्टॉलेशन पूरा होने के बाद आईडीई पुनः आरंभ करने के लिए संकेत देगा। रीस्टार्ट करने के बाद IDE खोलें और क्लिक करें टूल्स -> GitHub Copilot -> GitHub पर लॉगिन करें।
- सफल लॉगिन के बाद, कोपायलट उपयोग के लिए तैयार हो जाएगा।
- कोपायलट का उपयोग करने के लिए, कोड लिखते समय नीचे दिए गए शॉर्टकट का उपयोग किया जा सकता है
कार्रवाई | विंडोज़/लिनक्स | मैक ओएस |
इनलाइन सुझावों को ट्रिगर करें | Alt+\ | विकल्प+\ |
अगला सुझाव देखें | ऑल्ट+] | विकल्प+] |
पिछला सुझाव देखें | Alt+[ | विकल्प+[ |
एक सुझाव स्वीकार करें | टैब | टैब |
इनलाइन सुझाव खारिज करें | ईएससी | ईएससी |
सभी सुझाव एक नए टैब में दिखाएं | Alt+Enter | Alt+Enter |
संबंधित: GitHub से डाउनलोड किया गया कोड कैसे देखें
उदाहरण 1: एक जटिल कोड को सरल बनाने के लिए
आइए यह प्रदर्शित करने के लिए नीचे दिए गए कोड स्निपेट पर विचार करें कि कोपायलट की रीफैक्टरिंग सुविधा का उपयोग करके एक जटिल कोड को कैसे सरल बनाया जा सकता है। यहां, हम समझने में आसानी के लिए एक बड़े कार्यक्रम के केवल एक भाग पर विचार कर रहे हैं:
रिफैक्टरिंग से पहले
public void processOrder(Order order) { // ... further codes if (order.isReadyForProcessing()) { // process the order } //... further codes }
कोपायलट के साथ रिफैक्टरिंग के बाद
public void processOrder(Order order) { // ...further codes processReadyOrder(order); // ...further codes }
private void processReadyOrder(Order order) { if (order.isReadyForProcessing()) { // process the order } }
उपरोक्त उदाहरण में, कोड के पहले सेट (रिफैक्टरिंग से पहले) में एक फ़ंक्शन या विधि नाम शामिल है आदेश प्रक्रिया में लाएं, जो किसी विशेष ऑर्डर को संसाधित करने के लिए चरण निष्पादित करता है। ऑर्डर संसाधित होने से पहले, सशर्त IF स्टेटमेंट यह जांचता है कि ऑर्डर प्रोसेसिंग के लिए तैयार है या नहीं यदि (order.isReadyForProcessing()) समारोह। कोड के इस सेट में, प्रोसेसिंग लॉजिक को प्राथमिक फ़ंक्शन के अंदर शामिल किया गया है, जिससे यह कम मॉड्यूलर बन गया है।
अमेज़न खोज इतिहास हटाएं
निम्नलिखित कोड स्निपेट में, हमारे पास है आदेश प्रक्रिया में लाएं ऑर्डर को संसाधित करने का कार्य। हालाँकि, यह जाँचने का तर्क कि क्या ऑर्डर प्रसंस्करण के लिए तैयार है और तैयार ऑर्डर को संसाधित करने के लिए एक अलग फ़ंक्शन नाम में स्थानांतरित कर दिया गया है प्रोसेसरेडीऑर्डर। यह कोड को स्पष्टता और मॉड्यूलरिटी प्रदान करने के लिए प्रत्येक विधि को अलग करने में मदद करता है।
उदाहरण 2: परिवर्तनीय नामकरण
रिफैक्टरिंग से पहले
def calculate_area(l, w): return l * w
कोपायलट के साथ रिफैक्टरिंग के बाद
def calculate_area(length, width): return length * width
हालाँकि, रिफैक्टरिंग के बाद, वेरिएबल्स 'एल' और 'डब्ल्यू' को लंबाई और चौड़ाई से बदल दिया गया, जिससे रिफैक्टरिंग की एक आवश्यक विशेषता के रूप में वेरिएबल नामकरण के माध्यम से कोड की स्पष्टता बढ़ गई।
विरासत कर्नेल कॉलर
भले ही कोपायलट हमें कोड को फिर से बनाने में मदद कर सकता है, लेकिन इसकी कई सीमाएँ हैं, जैसे गलत सुझाव, अत्यधिक निर्भरता और पुराने कोड को अपवर्तित करना। एक बार जब आपके पास इसके सुझाव हों, तो सुनिश्चित करें कि आप सभी मैन्युअल जांच से गुजरें सही संकेतों का उपयोग करें.
GitHub Copilot को किस डेटा पर प्रशिक्षित किया गया है?
GitHub Copilot को सार्वजनिक रूप से उपलब्ध स्रोतों से प्राकृतिक भाषा पाठ और स्रोत कोड पर प्रशिक्षित किया गया है, जिसमें GitHub पर सार्वजनिक रिपॉजिटरी में कोड भी शामिल है। यह जेनरेटिव AI मॉडल द्वारा संचालित है जिसे GitHub, OpenAI और Microsoft ने विकसित किया है।
कोपायलट के लिए संगत प्रोग्रामिंग भाषाएँ क्या हैं?
जीथब कोपायलट विभिन्न भाषाओं का समर्थन करता है लेकिन जावास्क्रिप्ट, टाइपस्क्रिप्ट, रूबी, पायथन, गो, सी++ और सी# के साथ विशेष रूप से अच्छी तरह से काम करता है।