paint-brush
सॉफ्टवेयर विकास में एआई: ईएलईकेएस आर एंड डी टीम की अंतर्दृष्टि के साथ गिटहब कोपायलट की खोजद्वारा@elekssoftware
757 रीडिंग
757 रीडिंग

सॉफ्टवेयर विकास में एआई: ईएलईकेएस आर एंड डी टीम की अंतर्दृष्टि के साथ गिटहब कोपायलट की खोज

द्वारा ELEKS6m2024/02/06
Read on Terminal Reader

बहुत लंबा; पढ़ने के लिए

सॉफ़्टवेयर विकास में AI की भूमिका की खोज करें क्योंकि ELEKS GitHub Copilot की नवीन क्षमताओं की खोज करता है।
featured image - सॉफ्टवेयर विकास में एआई: ईएलईकेएस आर एंड डी टीम की अंतर्दृष्टि के साथ गिटहब कोपायलट की खोज
ELEKS HackerNoon profile picture
0-item
1-item

एआई सॉफ्टवेयर विकास में क्रांति ला रहा है, इसे अधिक कुशल, उत्पादक और नवीन बना रहा है। इस लेख में, हम सॉफ्टवेयर विकास में एआई के प्रभाव का पता लगाते हैं, ELEKS R&D टीम द्वारा किए गए GitHub Copilot की हमारी जांच से प्राप्त अंतर्दृष्टि पर प्रकाश डालते हैं।


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


अमेरिका में स्थित 92% डेवलपर्स पहले से ही काम पर और उसके बाहर एआई कोडिंग टूल का उपयोग कर रहे हैं। - गिटहब


70% डेवलपर्स का मानना है कि एआई कोडिंग उपकरण उन्हें अपने पेशेवर प्रयासों में एक अलग बढ़त देंगे, जिसमें बेहतर कोड गुणवत्ता, कम पूरा होने का समय और बढ़ी हुई घटना समाधान क्षमताएं शामिल हैं। - गिटहब


5 में से 4 डेवलपर्स को उम्मीद है कि एआई कोडिंग टूल उनकी टीम को अधिक सहयोगी बनाएगा। - गिटहब


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


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

GitHub कोपायलट क्या है?

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


GitHub Copilot इंटीग्रेटेड डेवलपमेंट एनवायरनमेंट (IDE) प्लगइन्स का उपयोग करके प्रोग्राम कोड के साथ काम करता है। वर्तमान में केवल निम्नलिखित IDE समर्थित हैं:

  • विजुअल स्टूडियो कोड
  • विजुअल स्टूडियो
  • नियोविम
  • JetBrains से सभी IDE

ELEKS की GitHub Copilot जांच का अवलोकन

इस जांच का उद्देश्य विकास की गति और गुणवत्ता दोनों पर कोपायलट के उपयोग के प्रभाव का पता लगाना था।


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

लक्ष्य

दृष्टिकोण

कोपायलट का उपयोग करते समय डेवलपर की योग्यता और प्रदर्शन के बीच निर्भरता का मूल्यांकन करें

हमने बैक-एंड विकास के लिए सिम्फनी फ्रेमवर्क का चयन किया। बैक-एंड टीम को इस ढांचे के साथ कोई पर्याप्त अनुभव नहीं था।
बैक-एंड समाधान की गुणवत्ता का आकलन करने के लिए, एक सिम्फनी विशेषज्ञ एक कोड समीक्षा में शामिल था। विशेषज्ञ ने एक बुनियादी परियोजना संरचना भी विकसित की जो सामान्य से आगे निकल गई और एक बड़े वाणिज्यिक परियोजना में उपयोग की गई।

विशिष्ट डेवलपर कार्यों पर प्रभाव की जांच करें

परियोजना शुरू होने से पहले, हमने एक WBS बनाया जो एक वाणिज्यिक परियोजना पर एक डेवलपर के विशिष्ट कार्य को कवर करता था। इसके अलावा, हमने एक कार्य आकलन सत्र भी आयोजित किया।

लोकप्रियता के आधार पर प्रोग्रामिंग भाषाओं और फ्रेमवर्क पर प्रभाव की जांच करें

हमने परीक्षण कवरेज के साथ एक वेब एप्लिकेशन विकसित किया है।

कार्य पूरा होने के समय पर प्रभाव का मूल्यांकन करें

हमने परियोजना पर व्यक्तिगत कार्यों का प्रारंभिक अनुमान लगाया।

अनुसंधान प्रभावशीलता बढ़ाएँ

हमने दैनिक सिंक के दौरान टीम के भीतर ज्ञान-साझाकरण सत्र आयोजित किए।

सुझावों की गुणवत्ता का अन्वेषण करें

हमने परीक्षण किया कि कोपायलट एक गैर-शास्त्रीय और अधिक जटिल परियोजना संरचना से कैसे निपटता है।



ELEKS की GitHub Copilot जांच से मुख्य निष्कर्ष

GitHub Copilot की ELEKS की जांच से कई प्रमुख निष्कर्ष निकले जो टूल की क्षमताओं और लाभों पर प्रकाश डालते हैं। यहां अधिक विस्तृत विवरण दिया गया है:


कृपया ध्यान दें कि जांच के नतीजे टीम की व्यक्तिपरक प्रतिक्रिया, उनके काम की टिप्पणियों और उनके समाधानों की कोड समीक्षाओं पर आधारित हैं।

GitHub Copilot के संचालन के दो तरीके हैं:

  1. कोड स्वत: पूर्णता मोड - लगभग हमेशा प्रदर्शन पर सकारात्मक प्रभाव डालता है।
  2. एक संकेत के साथ एक टिप्पणी के आधार पर कोड जनरेशन मोड - केवल विशिष्ट कोड संरचनाओं के लिए अच्छा काम करता है। व्यावसायिक तर्क या गैर-विशिष्ट समाधान उत्पन्न करते समय यह प्रतिकूल हो सकता है क्योंकि प्रस्तावित कोड वेरिएंट का विश्लेषण करने में बहुत समय लगता है।

GitHub Copilot कोड सुझावों की गुणवत्ता निम्नलिखित पर निर्भर करती है:

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

GitHub Copilot के अन्य लाभ:

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

सामान्य टीम निष्कर्ष:

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


टीम के सदस्यों की उत्पादकता में 5-10% की औसत वृद्धि। - ELEKS R&D टीम


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

निष्कर्ष

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


इस बिंदु पर, एक व्यक्तिगत मासिक लाइसेंस की लागत केवल $10 है, जबकि व्यवसाय योजना की कीमत $19 प्रति माह है। GitHub Copilot निस्संदेह परियोजनाओं पर उपयोग के लिए वित्तीय रूप से फायदेमंद होगा, विशेष रूप से मध्यम योग्यता स्तर और उच्चतर के विशेषज्ञों के लिए।


टीम का अनुमान है कि GitHub Copilot का उपयोग करने के अनुभव में वृद्धि के साथ, प्रौद्योगिकी की लोकप्रियता और डेवलपर की योग्यता स्तर के आधार पर विकास की गति 5-25% तक बढ़ सकती है। GitHub Copilot को विकास को धीमा नहीं करने की गारंटी दी गई है क्योंकि डेवलपर्स धीरे-धीरे विशेषज्ञता और समझ हासिल कर लेंगे कि टूल का उपयोग करना कब फायदेमंद है और कब नहीं।


निष्कर्षतः, सॉफ़्टवेयर विकास में AI का प्रभाव, जिसका उदाहरण GitHub Copilot जैसे टूल द्वारा दर्शाया गया है, निर्विवाद है। कुल मिलाकर, GitHub Copilot जैसे उपकरण किसी डेवलपर की जगह नहीं ले सकते हैं, लेकिन डेवलपर्स के आराम और उत्पादकता को बढ़ाने के लिए मूल्यवान उपकरण के रूप में काम करते हैं, जो तेजी से AI-संचालित दुनिया में सॉफ्टवेयर विकास के विकास में योगदान देता है।


एक कुशल सॉफ़्टवेयर विकास प्रक्रिया और सफल परिणामों का मार्ग खोलें, ELEKS विशेषज्ञों से संपर्क करें


यहाँ भी प्रकाशित किया गया है.