AI உதவியுடன் கோடிங் செய்யும் போது டெவலப்பர்கள் செய்யும் தவறுகள் என்ன?
டெவலப்பர்கள் AI கோடிங் உதவிகளை தவறாகப் பயன்படுத்தும் மிகவும் பொதுவான வழிகளைப் பற்றிய நடைமுறை பார்வை, மற்றும் பிழைகள் மற்றும் பாதுகாப்புக் குறைபாடுகளைக் கொண்ட குறியீட்டை வெளியிடுவதைத் தவிர்ப்பது.
Copilot, Claude, மற்றும் Cursor இன் உள்ளமைந்த மாதிரிகள் போன்ற AI உதவிகள் குறியீட்டு எழுதுவது எவ்வளவு வேகம் என்பதை மாற்றিவிட்டன. அதை எவ்வளவு கவனமாக மর்மமிட வேண்டும் என்பதை அவை மாற்றவில்லை. AI-உதவி பெறும் குறியீட்டிலிருந்து நான் கண்ட பெரும்பாலான சேதம் மாதிரிகளின் காரணமாக அல்ல, சில திரும்ப எழுப்பக்கூடிய பழக்கவழக்கங்களிலிருந்து வருகிறது.
பரிந்துரைகளை படிக்காமல் ஏற்றுக்கொள்ளுதல்
மிகப்பெரிய விஷயம் tab-ஆய் ஒரு பூர்த்தியை ஏற்றுக்கொள்வது ஏனெனில் இது நம்பிக்கைக்குரியதாக தெரிகிறது மற்றும் संकलিত ஆகிறது. நம்பிக்கைக்குரியது சரி அல்ல. ஒரு பரிந்துரை செய்யப்பட்ட SQL கேள்வி ஒரு refactor இல் WHERE clause ஐ அமைதியாக கைவிட்டு, ব்যক்তி அதை ஏற்றுக்கொண்டதைக் கண்டேன், ஏனெனில் மாறி பெயர்கள் பொருந்தினவை. உங்கள் இல் நீங்கள் உதவியாளர் உங்களுக்கு கொடுக்கும் ஒவ்வொரு வரியையும் உங்கள் சகாக்களின் pull request ஐ படிக்கும் வேகத்தில் படிக்கவில்லை என்றால், நீங்கள் புரிந்து கொள்ளாத மாறி அனுப்பக் கூடும். ஒவ்வொரு பரிந்துரையையும் ஒரு junior dev இலிருந்து முதல் வரைபடமாக கருதுங்கள் அவர் வேகமாக இருக்கிறார் ஆனால் உங்கள் codebase இன் மாநியங்களைப் பற்றி நினைவு இல்லை.
பாதுகாப்பு-உணர்வாக இருக்கும் குறியீட்டுடன் அதை நம்புதல்
AI உதவிகள் பொது குறியீட்டின் பெரிய குவியலில் பயிற்சி பெறுகின்றன, மற்றும் அந்த குறியீட்டின் பெரும்பாலும் பாதுகாப்பு சிக்கல்கள் உள்ளன. ஒரு விரைவான ফাইல் பதிவேற்றம் கையாளிக்க கேளுங்கள் மற்றும் நீங்கள் பெரும்பாலும் நீட்ட சரிபார்ப்பு இல்லாத, அளவு வரம்பு இல்லாத, மற்றும் os.path.join அல்லது பாதுகாப்பு நூலகம் அழைப்பிற்கு பதிலாக சரம் concatenation ஆல் உருவாக்கப்பட்ட பாதை பெறுவீர்கள். அங்கம் அனுমতিபெற்ற கதை ஒரே: உதவிகள் localStorage இல் JWTs சேமிக்க பரிந்துரை செய்ய விரும்புகிறது, அல்லது == உடன் பதாகைகளை ஒப்பிட, நிலையான நேர ஒப்பீட்டிற்கு பதிலாக. இந்த எதுவும் தெய்வ நோக்கம் அல்ல, இது பயிற்சி தரவு உள்ள புள்ளிவிவர பொதுவான உள்ளது. அங்கீகாரம், ফाइल I/O, deserialization, அல்லது SQL ஸ்पर्श செய்யும் எதனுக்கும், தர্க்கம் நিজேயாக எழுதுங்கள் அல்லது AI வெளியீட்டை அதே threat-மாடலிங் கேள்விகள் கூறுவிக்க: எதிரியான உள்ளீட்ட உடன் என்ன நடக்கிறது, இந்த அழைப்பு தோல்வியடைந்தால் என்ன நடக்கிறது, வேறு யார் இந்த endpoint ஐ அடையலாம்.
அது சார்பு மற்றும் API களை கற்பனை செய்ய அனுமতி வழங்குதல்
மாதிரிகள் package பெயர்கள் மற்றும் செயல்பாடு স্বাক்ষரங்கள் மொத்த நம்பிக்கை உடன் hallucinate. இது "slopsquatting" சிக்கல் — தாக்கம் நடத்தুபவர்கள் fake package பெயர்கள் பதிவு செய்கிறார்கள் மாதிரிகள் அடிக்கடி பரிந்துரை செய்கிறது, ஆகவே verified pip install அல்லது npm install இல்லாமல் மாறுபட்ட कुछ வெளியே இழுக்க முடியும் இது உங்கள் logging நூலகம் அல்ல. உதவியாளர் ஒரு சார்பு பரிந்துரை சேர்க்கும் முன், அது actually PyPI அல்லது npm இல் உள்ளதா சரிபார்க்கவும், அதன் பதிவிறக்கம் எண்ணம் மற்றும் கடந்த வெளியிட தேதி சரிபார்க்கவும், மற்றும் origin skim தொல்லை பெரிய தங்க. ஒரே எச்சரிக்கை API அழைப்புக்கு பொருந்தும்: உதவியாளர் உங்கள் தெரியாத ஒரு முறைக்கு குறிப்பு செய்திருந்தால், அது exists என்று கூறுவிக்கு முன் actual docs சரிபார்க்கவும்.
உங்கள் சொந்த குறியீட்டின் মানசிக மாடல் হারানো
நீங்கள் குறியீட்டு நிজেயாக எழுதும் போது, ஒவ்வொரு பாகம் ஏன் உள்ளது என்பதை மानसिक মানचित्र உருவாக்க. நீங்கள் ஒரு session முழுவதும் AI-உৎপাद்য குறியீட்டின் பெரிய blocks ஏற்றுக்கொள்ளும் போது, அந்த মानचित्र দ్రుత విస్తరణ వరకు పలుచన ఆ వస్తుంది. அப్పుడు ఒక bug తరువాత మూడు వారాలను చూపిస్తుంది మరియు మీరు bugs నుండి చేయని code మరియు పూర్తిగా గుర్తుచేసుకోని. సర్ఫ ఐట్ కు unikam AI-უৎпाद్य குறியీட్టు స్ফూర్తను తెలుసుకుంటున్న నుండి నిరాకరణ నిరాకరణ అర్థం ఈ చాలా కాలం ఖచ్చితంగా merging చేస్తున్న ఆర్జుక్తను ఆफ్, లేదా teammate ఆయుధం కాని merging. మీరు అర్థం చేసుకోలేని త్రినాభిక్క్రుా పద్ధति కుదరని మరియు ఎందుకు అర్థం ఈ చేయని merging తెలుసుకుంటున్న పంది అర్థం చేసుకోలేని యొక్క ఆ నిరాకరణ చేయని merging చేయాలని.
కోడ్ కారణంగా tests కనిపించకుండా మరోచేయి దాటవేయిచేయు
AI உதவியுடன் எழுதப்பட்டது, Michal Pilch (CISSP), Korra Studio ஆல் மறுஆய்வு செய்யப்பட்டு வெளியிடப்பட்டது.
இது Korra Studio அறிவுத் தளத்தில் இருந்து ஒரு குறிப்பு — மேடை ஒவ்வொரு தலைப்பையும் 1-க்கு-1 மாற்றுச் சொற்களுடன் இணைக்கிறது.
இலவசமாக தொடங்கவும்arrow_forward