ചുരുക്ക ഉത്തരം: AI- സഹായത്തോടെയുള്ള കോഡ് പലപ്പോഴും അസാധാരണമാംവിധം വൃത്തിയുള്ളതും “പാഠപുസ്തകം” പോലെയുമാണ് വായിക്കുന്നത്: സ്ഥിരമായ ഫോർമാറ്റിംഗ്, പൊതുവായ നാമകരണം, മാന്യമായ പിശക് സന്ദേശങ്ങൾ, വ്യക്തമായത് പുനഃസ്ഥാപിക്കുന്ന അഭിപ്രായങ്ങൾ. യഥാർത്ഥ ഗ്രിറ്റ് - ഡൊമെയ്ൻ ഭാഷ, വിചിത്രമായ നിയന്ത്രണങ്ങൾ, എഡ്ജ് കേസുകൾ - അതിൽ ഇല്ലെങ്കിൽ അത് ഒരു മുന്നറിയിപ്പ് അടയാളമാണ്. നിങ്ങളുടെ repo പാറ്റേണുകളിൽ നിങ്ങൾ അത് നങ്കൂരമിടുകയും ഉൽപ്പാദന അപകടസാധ്യതകൾക്കെതിരെ അത് പരീക്ഷിക്കുകയും ചെയ്യുമ്പോൾ, അത് വിശ്വസനീയമാകും.
പ്രധാന കാര്യങ്ങൾ:
സന്ദർഭ പരിശോധന: ഡൊമെയ്ൻ പദങ്ങൾ, ഡാറ്റ രൂപങ്ങൾ, നിയന്ത്രണങ്ങൾ എന്നിവ പ്രതിഫലിക്കുന്നില്ലെങ്കിൽ, അത് അപകടകരമാണെന്ന് കണക്കാക്കുക.
ഓവർ-പോളിഷ്: അമിതമായ ഡോക്സ്ട്രിംഗുകൾ, ഏകീകൃത ഘടന, മങ്ങിയ പേരുകൾ എന്നിവ പൊതുവായ ജനറേഷനെ സൂചിപ്പിക്കും.
പിശക് ശിക്ഷണം: വിശാലമായ അപവാദ ക്യാച്ചുകൾ, വിഴുങ്ങിയ പരാജയങ്ങൾ, അവ്യക്തമായ ലോഗിംഗുകൾ എന്നിവയ്ക്കായി ശ്രദ്ധിക്കുക.
അമൂർത്തീകരണം ട്രിം ചെയ്യുക: ഏറ്റവും ചെറിയ ശരിയായ പതിപ്പ് മാത്രം ശേഷിക്കുന്നതുവരെ അനുമാന സഹായികളും ലെയറുകളും ഇല്ലാതാക്കുക.
റിയാലിറ്റി ടെസ്റ്റുകൾ: ഇന്റഗ്രേഷൻ, എഡ്ജ്-കേസ് ടെസ്റ്റുകൾ എന്നിവ ചേർക്കുക; അവ "ക്ലീൻ വേൾഡ്" അനുമാനങ്ങളെ വേഗത്തിൽ തുറന്നുകാട്ടുന്നു.

AI- സഹായത്തോടെയുള്ള കോഡിംഗ് ഇപ്പോൾ എല്ലായിടത്തും ഉണ്ട് (സ്റ്റാക്ക് ഓവർഫ്ലോ ഡെവലപ്പർ സർവേ 2025; GitHub Octoverse (ഒക്ടോബർ 28, 2025)). ചിലപ്പോൾ ഇത് മികച്ചതാണ്, നിങ്ങൾക്ക് ഒരു ഉച്ചതിരിഞ്ഞ് ലാഭിക്കാം. മറ്റ് ചിലപ്പോൾ ഇത്... സംശയാസ്പദമായി മിനുക്കിയതോ, അൽപ്പം പൊതുവായതോ, അല്ലെങ്കിൽ ആരും പരീക്ഷിച്ചിട്ടില്ലാത്ത ഒരു ബട്ടൺ ആരെങ്കിലും ക്ലിക്കുചെയ്യുന്നതുവരെ അത് "പ്രവർത്തിക്കുന്നു" 🙃. കോഡ് അവലോകനങ്ങൾ, അഭിമുഖങ്ങൾ, സ്വകാര്യ DM-കൾ എന്നിവയിൽ ആളുകൾ ഉന്നയിക്കുന്ന ചോദ്യത്തിലേക്ക് അത് നയിക്കുന്നു:
AI കോഡ് എങ്ങനെയിരിക്കും
നേരിട്ടുള്ള ഉത്തരം ഇതാണ്: അത് എന്തും പോലെ തോന്നാം. പക്ഷേ ചില പാറ്റേണുകൾ ഉണ്ട് - കോടതിമുറി തെളിവുകളല്ല, മൃദുവായ സിഗ്നലുകൾ. ഒരു കേക്ക് ഒരു ബേക്കറിയിൽ നിന്നാണോ അതോ ആരുടെയെങ്കിലും അടുക്കളയിൽ നിന്നാണോ വന്നതെന്ന് ഊഹിക്കുന്നത് പോലെ ചിന്തിക്കുക. ഫ്രോസ്റ്റിംഗ് വളരെ പെർഫെക്റ്റ് ആയിരിക്കാം, പക്ഷേ ചില ഹോം ബേക്കറിക്കാരും ഭയങ്കര നല്ലവരാണ്. അതേ വൈബ്.
സാധാരണ AI വിരലടയാളങ്ങൾ തിരിച്ചറിയുന്നതിനും അവ എന്തുകൊണ്ട് സംഭവിക്കുന്നു എന്ന് മനസ്സിലാക്കുന്നതിനും - പ്രധാനമായും - AI- ജനറേറ്റഡ് കോഡിനെ നിങ്ങൾ വിശ്വസിക്കുന്ന കോഡാക്കി മാറ്റുന്നതിനുമുള്ള ഒരു പ്രായോഗിക ഗൈഡ് ചുവടെയുണ്ട് ✅.
🔗 AI എങ്ങനെയാണ് ട്രെൻഡുകൾ പ്രവചിക്കുന്നത്?
യഥാർത്ഥ ഉപയോഗത്തിലുള്ള പാറ്റേൺ ലേണിംഗ്, സിഗ്നലുകൾ, പ്രവചനം എന്നിവ വിശദീകരിക്കുന്നു.
🔗 എങ്ങനെയാണ് AI അപാകതകൾ കണ്ടെത്തുന്നത്?
ഔട്ട്ലിയർ ഡിറ്റക്ഷൻ രീതികളും സാധാരണ ബിസിനസ് ആപ്ലിക്കേഷനുകളും ഉൾക്കൊള്ളുന്നു.
🔗 AI എത്ര വെള്ളം ഉപയോഗിക്കുന്നു?
ഡാറ്റാ സെന്റർ ജല ഉപയോഗത്തെയും പരിശീലന ആഘാതങ്ങളെയും വിശകലനം ചെയ്യുന്നു.
🔗 എന്താണ് AI ബയസ്?
പക്ഷപാത സ്രോതസ്സുകൾ, ദോഷങ്ങൾ, അത് കുറയ്ക്കുന്നതിനുള്ള പ്രായോഗിക മാർഗങ്ങൾ എന്നിവ നിർവചിക്കുന്നു.
1) ആദ്യം, ആളുകൾ “AI കോഡ്” എന്ന് പറയുമ്പോൾ എന്താണ് ഉദ്ദേശിക്കുന്നത് 🤔
മിക്ക ആളുകളും "AI കോഡ്" എന്ന് പറയുമ്പോൾ, സാധാരണയായി ഇവയിൽ ഒന്നിനെയാണ് അർത്ഥമാക്കുന്നത്:
-
ഒരു പ്രോംപ്റ്റിൽ നിന്ന് (സവിശേഷത, ബഗ്ഫിക്സ്, റീഫാക്ടർ) ഒരു AI അസിസ്റ്റന്റ് തയ്യാറാക്കിയ കോഡ്
-
ഓട്ടോകംപ്ലീറ്റ് വഴി കോഡ് വൻതോതിൽ പൂർത്തിയാക്കി, അവിടെ ഡെവലപ്പർ നഡ്ജ് ചെയ്തെങ്കിലും പൂർണ്ണമായി രചിച്ചില്ല.
-
"ക്ലീനപ്പ്", "പ്രകടനം" അല്ലെങ്കിൽ "സ്റ്റൈൽ" എന്നിവയ്ക്കായി AI മാറ്റിയെഴുതിയ കോഡ്
-
ഒരു AI-യിൽ നിന്ന് വന്നതല്ലെങ്കിൽ പോലും, അത് വന്നതായി തോന്നിക്കുന്ന കോഡ് (ആളുകൾ സമ്മതിക്കുന്നതിലും കൂടുതൽ ഇത് സംഭവിക്കുന്നു)
ഒരു പ്രധാന കാര്യം ഇതാ: AI-ക്ക് ഒരു പ്രത്യേക ശൈലി ഇല്ല. അതിന് പ്രവണതകളുണ്ട്. ആ പ്രവണതകളിൽ പലതും ഉണ്ടാകുന്നത് വിശാലമായി ശരിയാകാനും, വിശാലമായി വായിക്കാനും, വിശാലമായി സുരക്ഷിതമാകാനും ശ്രമിക്കുന്നതിലൂടെയാണ്... ഇത് വിരോധാഭാസമെന്നു പറയട്ടെ, ഔട്ട്പുട്ടിനെ അൽപ്പം സമാനമായി തോന്നിപ്പിക്കും.
2) AI കോഡ് എങ്ങനെയായിരിക്കും കാണപ്പെടുന്നത്: ദ്രുത ദൃശ്യങ്ങൾ പറയുന്നു 👀
തലക്കെട്ടിന് വ്യക്തമായി ഉത്തരം നൽകാം: AI കോഡ് എങ്ങനെയിരിക്കും.
പലപ്പോഴും ഇത് കോഡ് പോലെ കാണപ്പെടുന്നു:
-
വളരെ “പാഠപുസ്തക വൃത്തി” - സ്ഥിരമായ ഇൻഡന്റേഷൻ, സ്ഥിരമായ ഫോർമാറ്റിംഗ്, സ്ഥിരമായ എല്ലാം.
-
നിഷ്പക്ഷമായ വാചാലത - കാര്യമായ സഹായമില്ലാത്ത ധാരാളം “ഉപയോഗപ്രദമായ” അഭിപ്രായങ്ങൾ.
-
അമിതമായി സാമാന്യവൽക്കരിച്ചത് - രണ്ട് യഥാർത്ഥ സാഹചര്യങ്ങൾക്ക് പകരം പത്ത് സാങ്കൽപ്പിക സാഹചര്യങ്ങൾ കൈകാര്യം ചെയ്യുന്നതിനായി നിർമ്മിച്ചത്.
-
അൽപ്പം അമിത ഘടന - അധിക സഹായ പ്രവർത്തനങ്ങൾ, അധിക പാളികൾ, അധിക അമൂർത്തീകരണം... മൂന്ന് സ്യൂട്ട്കേസുകൾ ഉപയോഗിച്ച് ഒരു വാരാന്ത്യ യാത്രയ്ക്ക് പാക്ക് ചെയ്യുന്നത് പോലെ 🧳.
-
യഥാർത്ഥ സിസ്റ്റങ്ങൾ ശേഖരിക്കുന്ന വിചിത്രമായ എഡ്ജ്-കേസ് ഗ്ലൂ (ഫീച്ചർ ഫ്ലാഗുകൾ, ലെഗസി ക്വിർക്കുകൾ, അസൗകര്യകരമായ നിയന്ത്രണങ്ങൾ) കാണുന്നില്ല ( മാർട്ടിൻ ഫൗളർ: ഫീച്ചർ ടോഗിളുകൾ ).
പക്ഷേ - ഇത് പ്രധാനമായതിനാൽ ഞാൻ ഇത് ആവർത്തിച്ചുകൊണ്ടിരിക്കും - മനുഷ്യ ഡെവലപ്പർമാർക്കും ഇതുപോലെ എഴുതാൻ കഴിയും. ചില ടീമുകൾ അത് നടപ്പിലാക്കുന്നു. ചില ആളുകൾ വെറും ഭ്രാന്തന്മാരാണ്. ഞാൻ അത് സ്നേഹത്തോടെ പറയുന്നു 😅.
അതുകൊണ്ട് “AI കണ്ടെത്തുന്നതിന്” പകരം ചോദിക്കുന്നതാണ് നല്ലത്: ഈ കോഡ് യഥാർത്ഥ സന്ദർഭത്തിൽ എഴുതിയതുപോലെയാണോ പ്രവർത്തിക്കുന്നത്? AI പലപ്പോഴും വഴുതിവീഴുന്ന ഇടമാണ് സന്ദർഭം.
3) "അസാധാരണമായ താഴ്വര" അടയാളങ്ങൾ - അത് വളരെ വൃത്തിയുള്ളതായിരിക്കുമ്പോൾ 😬
AI- ജനറേറ്റ് ചെയ്ത കോഡിന് പലപ്പോഴും ഒരു പ്രത്യേക "ഗ്ലോസ്" ഉണ്ടാകും. എല്ലായ്പ്പോഴും അല്ല, പക്ഷേ പലപ്പോഴും.
സാധാരണ "വളരെ വൃത്തിയുള്ള" സിഗ്നലുകൾ
-
എല്ലാ ഫംഗ്ഷനും , അത് വ്യക്തമാകുമ്പോൾ പോലും, ഒരു ഡോക്സ്ട്രിംഗ് ഉണ്ട്
-
എല്ലാ വേരിയബിളുകൾക്കും
റിസൾട്ട്,ഡാറ്റ,ഇനങ്ങൾ,പേലോഡ്,റെസ്പോൺസ്ഡേറ്റതുടങ്ങിയ മാന്യമായ പേരുകൾ ഉണ്ട് . -
സ്ഥിരമായ പിശക് സന്ദേശങ്ങൾ : "അഭ്യർത്ഥന പ്രോസസ്സ് ചെയ്യുമ്പോൾ ഒരു പിശക് സംഭവിച്ചു."
-
ബന്ധമില്ലാത്ത മൊഡ്യൂളുകളിലുടനീളം ഏകീകൃത പാറ്റേണുകൾ, എല്ലാം ഒരേ ശ്രദ്ധാലുവായ ലൈബ്രേറിയൻ എഴുതിയതുപോലെ.
സൂക്ഷ്മമായ സമ്മാനദാനം
AI കോഡ് ഒരു ഉൽപ്പന്നത്തിനു വേണ്ടിയല്ല, ഒരു ട്യൂട്ടോറിയലിനായി രൂപകൽപ്പന ചെയ്തതാണെന്ന് തോന്നാം. അത്... വേലി വരയ്ക്കാൻ ഒരു സ്യൂട്ട് ധരിക്കുന്നത് പോലെയാണ്. വളരെ ശരിയായ, വസ്ത്രത്തിന് അൽപ്പം തെറ്റായ പ്രവർത്തനം.
4) ഒരു നല്ല AI കോഡ് പതിപ്പിനെ എങ്ങനെ മാറ്റാം? ✅
നമുക്ക് അത് മാറ്റിവയ്ക്കാം. ലക്ഷ്യം "എഐ പിടിക്കുക" അല്ലാത്തതിനാൽ, അത് "കപ്പൽ ഗുണനിലവാരം" ആണ്
AI- സഹായത്തോടെയുള്ള കോഡിന്റെ ഒരു നല്ല പതിപ്പ് ഇതാണ്:
-
നിങ്ങളുടെ യഥാർത്ഥ ഡൊമെയ്നിൽ (നിങ്ങളുടെ പേരിടൽ, നിങ്ങളുടെ ഡാറ്റ രൂപങ്ങൾ, നിങ്ങളുടെ നിയന്ത്രണങ്ങൾ) നങ്കൂരമിട്ടിരിക്കുന്നു.
-
നിങ്ങളുടെ ആർക്കിടെക്ചറുമായി വിന്യസിച്ചിരിക്കുന്നു (പാറ്റേണുകൾ റിപ്പോയുമായി പൊരുത്തപ്പെടുന്നു, ഒരു സാധാരണ ടെംപ്ലേറ്റുമായി അല്ല).
-
നിങ്ങളുടെ അപകടസാധ്യതകൾക്കെതിരെ പരീക്ഷിച്ചു (ഹാപ്പി-പാത്ത് യൂണിറ്റ് ടെസ്റ്റുകൾ മാത്രമല്ല) (Google-ലെ സോഫ്റ്റ്വെയർ എഞ്ചിനീയറിംഗ്: യൂണിറ്റ് ടെസ്റ്റിംഗ്; പ്രാക്ടിക്കൽ ടെസ്റ്റ് പിരമിഡ്).
-
ഉദ്ദേശ്യത്തോടെ അവലോകനം ചെയ്തത് (ആരോ "ഇത് കംപൈൽ ചെയ്യുമോ എന്ന് മാത്രമല്ല" "എന്തുകൊണ്ട് ഇത്?" എന്ന് ചോദിച്ചു) (Google എഞ്ചിനീയറിംഗ് പ്രാക്ടീസുകൾ: കോഡ് അവലോകനത്തിന്റെ നിലവാരം).
-
നിങ്ങൾക്ക് ആവശ്യമുള്ളത് വരെ ചുരുക്കിയിരിക്കുന്നു (ഭാവിയെക്കുറിച്ച് സാങ്കൽപ്പികമായി മനസ്സിലാക്കാൻ കഴിയാത്തത്)
മറ്റൊരു വിധത്തിൽ പറഞ്ഞാൽ, മികച്ച AI കോഡ്... നിങ്ങളുടെ ടീം അത് എഴുതിയതുപോലെയാണ്. അല്ലെങ്കിൽ കുറഞ്ഞത്, നിങ്ങളുടെ ടീം അത് ശരിയായി സ്വീകരിച്ചു. സോഫ എവിടെയാണെന്ന് ഇപ്പോൾ അറിയുന്ന ഒരു രക്ഷാ നായയെപ്പോലെ 🐶.
5) പാറ്റേൺ ലൈബ്രറി: ക്ലാസിക് AI വിരലടയാളങ്ങൾ (അവ എന്തുകൊണ്ട് സംഭവിക്കുന്നു) 🧩
AI- സഹായത്തോടെയുള്ള കോഡ്ബേസുകളിൽ ഞാൻ ആവർത്തിച്ച് കണ്ട പാറ്റേണുകൾ ഇതാ - ഞാൻ വ്യക്തിപരമായി വൃത്തിയാക്കിയവ ഉൾപ്പെടെ. ഇവയിൽ ചിലത് നല്ലതാണ്. ചിലത് അപകടകരമാണ്. മിക്കതും വെറും... സിഗ്നലുകൾ മാത്രമാണ്.
എ) എല്ലായിടത്തും അമിത പ്രതിരോധാത്മകമായ ശൂന്യ പരിശോധന
നിങ്ങൾക്ക് ഇനിപ്പറയുന്ന പാളികൾ കാണാം:
-
x ഒന്നുമല്ലെങ്കിൽ: തിരികെ ... -
ശ്രമിക്കുക/ഒഴിവാക്കുക ഒഴിവാക്കൽ -
ഒന്നിലധികം ഫാൾബാക്ക് ഡിഫോൾട്ടുകൾ
എന്തുകൊണ്ട്: റൺടൈം പിശകുകൾ വ്യാപകമായി ഒഴിവാക്കാൻ AI ശ്രമിക്കുന്നു.
അപകടസാധ്യത: ഇത് യഥാർത്ഥ പരാജയങ്ങൾ മറയ്ക്കുകയും ഡീബഗ്ഗിംഗ് മോശമാക്കുകയും ചെയ്യും.
ബി) നിലനിൽപ്പ് നേടാത്ത പൊതുവായ സഹായ പ്രവർത്തനങ്ങൾ
ഇഷ്ടം:
-
പ്രോസസ്സ്_ഡാറ്റ() -
ഹാൻഡിൽ_റിക്വസ്റ്റ്() -
സാധൂകരിക്കുക_ഇൻപുട്ട്()
എന്തുകൊണ്ട്: അമൂർത്തീകരണം "പ്രൊഫഷണൽ" ആയി തോന്നുന്നു.
അപകടസാധ്യത: എല്ലാം ചെയ്യുന്നതും ഒന്നും വിശദീകരിക്കാത്തതുമായ ഫംഗ്ഷനുകളിൽ നിങ്ങൾ അവസാനിക്കുന്നു.
സി) കോഡ് പുനഃസ്ഥാപിക്കുന്ന അഭിപ്രായങ്ങൾ
ഉദാഹരണ ഊർജ്ജം:
-
"1 കൊണ്ട് i വർദ്ധിപ്പിക്കുക"
-
"മറുപടി തിരികെ നൽകുക"
എന്തുകൊണ്ട്: വിശദീകരണം നൽകാൻ AI പരിശീലിപ്പിക്കപ്പെട്ടു.
അപകടസാധ്യത: അഭിപ്രായങ്ങൾ വേഗത്തിൽ അഴുകുകയും ശബ്ദമുണ്ടാക്കുകയും ചെയ്യുന്നു.
ഡി) വിശദാംശങ്ങളുടെ ആഴം പൊരുത്തമില്ലാത്തത്
ഒരു ഭാഗം വളരെ വിശദമാണ്, മറ്റൊരു ഭാഗം നിഗൂഢമായി അവ്യക്തമാണ്.
എന്തുകൊണ്ട്: പെട്ടെന്നുള്ള ഫോക്കസ് ഡ്രിഫ്റ്റ്... അല്ലെങ്കിൽ ഭാഗിക സന്ദർഭം.
അപകടസാധ്യത: ദുർബലമായ സ്ഥലങ്ങൾ അവ്യക്തമായ മേഖലകളിൽ ഒളിഞ്ഞിരിക്കുന്നു.
ഇ) സംശയാസ്പദമായ സമമിതി ഘടന
ബിസിനസ്സ് യുക്തി പാടില്ലാത്തപ്പോൾ പോലും, എല്ലാം ഒരേ അസ്ഥികൂടം പിന്തുടരുന്നു.
എന്തുകൊണ്ട്: തെളിയിക്കപ്പെട്ട രൂപങ്ങൾ ആവർത്തിക്കാൻ AI ഇഷ്ടപ്പെടുന്നു.
അപകടസാധ്യത: ആവശ്യകതകൾ സമമിതികളല്ല - അവ കട്ടിയേറിയതാണ്, മോശമായി പായ്ക്ക് ചെയ്ത പലചരക്ക് സാധനങ്ങൾ പോലെ 🍅📦.
6) താരതമ്യ പട്ടിക - AI കോഡ് എങ്ങനെയിരിക്കുമെന്ന് വിലയിരുത്താനുള്ള വഴികൾ 🧪
താഴെ കൊടുത്തിരിക്കുന്നത് ഒരു പ്രായോഗിക ടൂൾകിറ്റ് താരതമ്യം ആണ്. "AI ഡിറ്റക്ടറുകൾ" അല്ല, കോഡ് റിയാലിറ്റി പരിശോധനകൾ പോലെയാണ് . കാരണം സംശയാസ്പദമായ കോഡ് തിരിച്ചറിയാനുള്ള ഏറ്റവും നല്ല മാർഗം അത് പരീക്ഷിക്കുക, അവലോകനം ചെയ്യുക, സമ്മർദ്ദത്തിൽ അത് നിരീക്ഷിക്കുക എന്നിവയാണ്.
| ഉപകരണം / സമീപനം | (പ്രേക്ഷകർക്ക്) ഏറ്റവും മികച്ചത് | വില | ഇത് എന്തുകൊണ്ട് പ്രവർത്തിക്കുന്നു (ഒരു ചെറിയ പോരായ്മയും) |
|---|---|---|---|
| കോഡ് അവലോകന ചെക്ക്ലിസ്റ്റ് 📝 | ടീമുകൾ, ലീഡുകൾ, സീനിയേഴ്സ് | സൗ ജന്യം | "എന്തുകൊണ്ട്" എന്ന ചോദ്യങ്ങൾ നിർബന്ധിക്കുന്നു; പൊതുവായ പാറ്റേണുകൾ പിടിക്കുന്നു... ചിലപ്പോൾ അവ്യക്തമായി തോന്നുന്നു (ഗൂഗിൾ എഞ്ചിനീയറിംഗ് പ്രാക്ടീസുകൾ: കോഡ് അവലോകനം) |
| യൂണിറ്റ് + ഇന്റഗ്രേഷൻ ടെസ്റ്റുകൾ ✅ | എല്ലാവർക്കും ഷിപ്പിംഗ് സവിശേഷതകൾ | സൗജന്യം | കാണാതായ എഡ്ജ് കേസുകൾ വെളിപ്പെടുത്തുന്നു; AI കോഡിൽ പലപ്പോഴും ഇൻ-പ്രൊഡക്ഷൻ ഫിക്ചറുകൾ ഇല്ല (Google-ലെ സോഫ്റ്റ്വെയർ എഞ്ചിനീയറിംഗ്: യൂണിറ്റ് ടെസ്റ്റിംഗ്; ദി പ്രാക്ടിക്കൽ ടെസ്റ്റ് പിരമിഡ്) |
| സ്റ്റാറ്റിക് അനാലിസിസ് / ലിൻറിംഗ് 🔍 | മാനദണ്ഡങ്ങളുള്ള ടീമുകൾ | സൗജന്യം / പണമടച്ചത് | പൊരുത്തക്കേടുകൾ ഫ്ലാഗ് ചെയ്യുന്നു; എന്നിരുന്നാലും "തെറ്റായ ആശയം" ബഗുകൾ കണ്ടെത്തില്ല (ESLint ഡോക്സ്; GitHub CodeQL കോഡ് സ്കാനിംഗ്) |
| തരം പരിശോധന (ബാധകമാകുന്നിടത്ത്) 🧷 | വലിയ കോഡ്ബേസുകൾ | സൗജന്യം / പണമടച്ചത് | അവ്യക്തമായ ഡാറ്റാ രൂപങ്ങൾ തുറന്നുകാട്ടുന്നു; അരോചകമായി തോന്നിയേക്കാം, പക്ഷേ അത് വിലമതിക്കുന്നു (ടൈപ്പ്സ്ക്രിപ്റ്റ്: സ്റ്റാറ്റിക് ടൈപ്പ് ചെക്കിംഗ്; മൈപി ഡോക്യുമെന്റേഷൻ) |
| ഭീഷണി മോഡലിംഗ് / ദുരുപയോഗ കേസുകൾ 🛡️ | സുരക്ഷാ ചിന്താഗതിക്കാരായ ടീമുകൾ | സൗ ജന്യം | പ്രതികൂല ഉപയോഗത്തെ AI അവഗണിച്ചേക്കാം; ഇത് അതിനെ വെളിച്ചത്തിലേക്ക് തള്ളിവിടുന്നു (OWASP ത്രെറ്റ് മോഡലിംഗ് ചീറ്റ് ഷീറ്റ്) |
| പ്രകടന പ്രൊഫൈലിംഗ് ⏱️ | ബാക്കെൻഡ്, ഡാറ്റ കൂടുതലുള്ള ജോലി | സൗജന്യം / പണമടച്ചത് | AI-ക്ക് അധിക ലൂപ്പുകൾ, പരിവർത്തനങ്ങൾ, അലോക്കേഷനുകൾ എന്നിവ ചേർക്കാൻ കഴിയും - പ്രൊഫൈലിംഗ് കള്ളമല്ല (പൈത്തൺ ഡോക്സ്: ദി പൈത്തൺ പ്രൊഫൈലറുകൾ) |
| ഡൊമെയ്ൻ-ഫോക്കസ്ഡ് ടെസ്റ്റ് ഡാറ്റ 🧾 | ഉൽപ്പന്നം + എഞ്ചിനീയറിംഗ് | സൗ ജന്യം | ഏറ്റവും വേഗതയേറിയ "ഗന്ധ പരിശോധന"; വ്യാജ ഡാറ്റ വ്യാജ ആത്മവിശ്വാസം സൃഷ്ടിക്കുന്നു (പൈറ്റെസ്റ്റ് ഫിക്ചേഴ്സ് ഡോക്സ്) |
| പെയർ അവലോകനം / വാക്ക്ത്രൂ 👥 | മെന്ററിംഗ് + നിർണായക പിആർ-കൾ | സൗ ജന്യം | രചയിതാവിനോട് ചോയ്സുകൾ വിശദീകരിക്കാൻ ആവശ്യപ്പെടുക; AI-ish കോഡിന് പലപ്പോഴും ഒരു കഥയുടെ അഭാവം ഉണ്ടാകാറുണ്ട് (Google-ലെ സോഫ്റ്റ്വെയർ എഞ്ചിനീയറിംഗ്: കോഡ് അവലോകനം) |
അതെ, “വില” എന്ന കോളം അല്പം വിഡ്ഢിത്തമാണ് - കാരണം ചെലവേറിയ ഭാഗം സാധാരണയായി ശ്രദ്ധയാണ്, ഉപകരണങ്ങളല്ല. ശ്രദ്ധയ്ക്ക് ചിലവാകും... എല്ലാം 😵💫.
7) AI- സഹായത്തോടെയുള്ള കോഡിലെ ഘടനാപരമായ സൂചനകൾ 🧱
AI കോഡ് എങ്ങനെയിരിക്കും എന്നതിന് കൂടുതൽ ആഴത്തിലുള്ള ഉത്തരം വേണമെങ്കിൽ, സൂം ഔട്ട് ചെയ്ത് ഘടന നോക്കുക.
1) സാങ്കേതികമായി ശരിയാണെങ്കിലും സാംസ്കാരികമായി തെറ്റാണെന്ന് പേരിടൽ
പല പ്രോജക്റ്റുകളിലും "സുരക്ഷിത"മായ പേരുകൾ തിരഞ്ഞെടുക്കാൻ AI പ്രവണത കാണിക്കുന്നു. എന്നാൽ ടീമുകൾ അവരുടേതായ ഭാഷ വികസിപ്പിക്കുന്നു:
-
നിങ്ങൾ അതിനെ
അക്കൗണ്ട് ഐഡി, AI അതിനെയൂസർ ഐഡി. -
നിങ്ങൾ അതിനെ
ലെഡ്ജർ എൻട്രി, AI അതിനെഇടപാട്. -
നിങ്ങൾ അതിനെ
FeatureGate, അത് അതിനെconfigFlag.
ഇതൊന്നും "മോശമല്ല", പക്ഷേ രചയിതാവ് നിങ്ങളുടെ ഡൊമെയ്നിൽ അധികകാലം ജീവിച്ചിരുന്നില്ല എന്നതിന്റെ സൂചനയാണിത്.
2) പുനരുപയോഗമില്ലാതെ ആവർത്തിക്കുക, അല്ലെങ്കിൽ കാരണമില്ലാതെ പുനരുപയോഗം ചെയ്യുക
AI ചിലപ്പോൾ:
-
ഒരേ യുക്തി ഒന്നിലധികം സ്ഥലങ്ങളിൽ ആവർത്തിക്കുന്നു, കാരണം അത് മുഴുവൻ റെപ്പോ സന്ദർഭവും ഒറ്റയടിക്ക് "ഓർമ്മിക്കുന്നില്ല", അല്ലെങ്കിൽ
-
മൂന്ന് വരികൾ ലാഭിക്കുമെങ്കിലും മൂന്ന് മണിക്കൂർ കഴിഞ്ഞ് ചിലവാകുന്ന അമൂർത്തീകരണങ്ങളിലൂടെ പുനരുപയോഗിക്കാൻ നിർബന്ധിക്കുന്നു.
അതാണ് കച്ചവടം: ഇപ്പോൾ ടൈപ്പ് ചെയ്യുന്നത് കുറവാണ്, പിന്നീട് കൂടുതൽ ചിന്തിക്കുന്നു. നല്ല കച്ചവടമാണോ എന്ന് എനിക്ക് എപ്പോഴും ഉറപ്പില്ല, ഞാൻ കരുതുന്നു... ആഴ്ചയെ ആശ്രയിച്ചിരിക്കും 😮💨.
3) യഥാർത്ഥ അതിരുകളെ അവഗണിക്കുന്ന "തികഞ്ഞ" മോഡുലാരിറ്റി
കോഡ് വൃത്തിയുള്ള മൊഡ്യൂളുകളായി വിഭജിക്കുന്നത് നിങ്ങൾ കാണും:
-
സാധുതയുള്ളവർ/ -
സേവനങ്ങൾ/ -
കൈകാര്യം ചെയ്യുന്നവർ/ -
യൂട്ടിലിറ്റുകൾ/
പക്ഷേ അതിരുകൾ നിങ്ങളുടെ സിസ്റ്റത്തിന്റെ സീമുകളുമായി പൊരുത്തപ്പെടണമെന്നില്ല. ഒരു മനുഷ്യൻ വാസ്തുവിദ്യയുടെ പ്രശ്നങ്ങളെ പ്രതിഫലിപ്പിക്കാൻ പ്രവണത കാണിക്കുന്നു. AI ഒരു വൃത്തിയുള്ള ഡയഗ്രം പ്രതിഫലിപ്പിക്കാൻ പ്രവണത കാണിക്കുന്നു.
8) പിശക് കൈകാര്യം ചെയ്യൽ - AI കോഡ് ലഭിക്കുന്നിടത്ത്... സ്ലിപ്പറി 🧼
പിശക് കൈകാര്യം ചെയ്യുന്നത് ഏറ്റവും വലിയ പ്രവചനങ്ങളിൽ ഒന്നാണ്, കാരണം അതിന് കൃത്യതമാത്രമല്ല, വിധിയും ആവശ്യമാണ്.
കാണേണ്ട പാറ്റേണുകൾ
-
അവ്യക്തമായ ലോഗിംഗ് ഉപയോഗിച്ച് വിശാലമായ ഒഴിവാക്കലുകൾ കണ്ടെത്തുന്നു ( പൈലിന്റ് ഡോക്സ്: ബെയർ-എക്സെപ്റ്റ് )
-
വിഴുങ്ങൽ പിശകുകളും സ്ഥിരസ്ഥിതികൾ തിരികെ നൽകുന്നതും
-
അർത്ഥവത്തായ പരാജയങ്ങൾ ഉയർത്തുന്നതിനുപകരം "വിജയം: തെറ്റ്" എന്ന് തിരികെ നൽകുന്നു
-
ബാക്ക്ഓഫ് ഇല്ലാതെയോ ക്യാപ്പ് ഇല്ലാതെയോ ലൂപ്പുകൾ വീണ്ടും ശ്രമിക്കുക (അല്ലെങ്കിൽ 3 പോലെ വിചിത്രമായി തിരഞ്ഞെടുത്ത ഒരു ക്യാപ്പ്, കാരണം 3 നന്നായി തോന്നുന്നു) ( AWS പ്രിസ്ക്രിപ്റ്റീവ് ഗൈഡൻസ്: ബാക്ക്ഓഫ് ഉപയോഗിച്ച് വീണ്ടും ശ്രമിക്കുക ; AWS ബിൽഡേഴ്സ് ലൈബ്രറി: ടൈംഔട്ടുകൾ, റീട്രികൾ, ജിറ്ററുള്ള ബാക്ക്ഓഫ് )
എത്ര നല്ലതായി തോന്നുന്നു
-
പരാജയങ്ങൾ പ്രത്യേകമാണ്
-
പിശകുകൾക്കെതിരെ നടപടിയെടുക്കാം
-
ലോഗിംഗിൽ സന്ദർഭം (ഐഡികൾ, ഇൻപുട്ടുകൾ, പ്രസക്തമായ അവസ്ഥ) ഉൾപ്പെടുന്നു.
-
സെൻസിറ്റീവ് ഡാറ്റ ലോഗുകളിലേക്ക് ഡംപ് ചെയ്യപ്പെടുന്നില്ല (AI ചിലപ്പോൾ ഇത് മറക്കും 😬) ( OWASP ലോഗിംഗ് ചീറ്റ് ഷീറ്റ് ; OWASP ടോപ്പ് 10 2025: സുരക്ഷാ ലോഗിംഗും അലേർട്ടിംഗ് പരാജയങ്ങളും )
ഒരു മനുഷ്യ സ്വഭാവ സവിശേഷതയാണ് അൽപ്പം അലോസരപ്പെടുത്തുന്ന ഒരു പിശക് സന്ദേശം എഴുതുന്നത്. എല്ലായ്പ്പോഴും അങ്ങനെയല്ല, പക്ഷേ നിങ്ങൾ അത് കാണുമ്പോൾ തന്നെ നിങ്ങൾക്ക് അത് മനസ്സിലാകും. AI പിശക് സന്ദേശങ്ങൾ പലപ്പോഴും ഒരു ധ്യാന ആപ്പ് പോലെ ശാന്തമായിരിക്കും.
9) എഡ്ജ് കേസുകളും ഉൽപ്പന്ന യാഥാർത്ഥ്യവും - “കാണാതായ ഗ്രിറ്റ്” 🧠🪤
യഥാർത്ഥ സിസ്റ്റങ്ങൾ വൃത്തിഹീനമാണ്. AI ഔട്ട്പുട്ടുകൾക്ക് പലപ്പോഴും ആ ഘടനയില്ല.
ടീമുകൾക്കുള്ള "ധീരതയുടെ" ഉദാഹരണങ്ങൾ:
-
ഫീച്ചർ ഫ്ലാഗുകളും ഭാഗിക റോളൗട്ടുകളും (മാർട്ടിൻ ഫൗളർ: ഫീച്ചർ ടോഗിളുകൾ)
-
പിന്നാക്ക അനുയോജ്യത ഹാക്കുകൾ
-
വിചിത്രമായ മൂന്നാം കക്ഷി ടൈംഔട്ടുകൾ
-
നിങ്ങളുടെ സ്കീമ ലംഘിക്കുന്ന ലെഗസി ഡാറ്റ
-
പൊരുത്തമില്ലാത്ത കേസിംഗ്, എൻകോഡിംഗ്, അല്ലെങ്കിൽ ലോക്കേൽ പ്രശ്നങ്ങൾ
-
ഏകപക്ഷീയമായി തോന്നുന്ന ബിസിനസ്സ് നിയമങ്ങൾ ഏകപക്ഷീയമായതിനാൽ
പറഞ്ഞുകൊടുത്താൽ AI-ക്ക് അടിയന്തര സാഹചര്യങ്ങൾ കൈകാര്യം ചെയ്യാൻ കഴിയും, പക്ഷേ വ്യക്തമായി ഉൾപ്പെടുത്തിയില്ലെങ്കിൽ, അത് പലപ്പോഴും ഒരു "ക്ലീൻ വേൾഡ്" പരിഹാരം സൃഷ്ടിക്കുന്നു. ക്ലീൻ വേൾഡുകൾ മനോഹരമാണ്. ക്ലീൻ വേൾഡുകളും നിലവിലില്ല.
അല്പം ബുദ്ധിമുട്ടുള്ള രൂപകം വരുന്നു: AI കോഡ് ഒരു പുത്തൻ സ്പോഞ്ച് പോലെയാണ് - അത് ഇതുവരെ അടുക്കളയിലെ ദുരന്തങ്ങളെ ആഗിരണം ചെയ്തിട്ടില്ല. അതാ, ഞാൻ അത് പറഞ്ഞു 🧽. എന്റെ ഏറ്റവും മികച്ച രചനയല്ല, പക്ഷേ അത് സത്യമാണ്.
10) AI- സഹായത്തോടെയുള്ള കോഡിനെ എങ്ങനെ മാനുഷികമായി തോന്നിപ്പിക്കാം - അതിലും പ്രധാനമായി, വിശ്വസനീയമായിരിക്കുക 🛠️✨
കോഡ് ഡ്രാഫ്റ്റ് ചെയ്യാൻ നിങ്ങൾ AI ഉപയോഗിക്കുകയാണെങ്കിൽ (ധാരാളം ആളുകൾ അങ്ങനെ ചെയ്യുന്നു), കുറച്ച് ശീലങ്ങൾ ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഔട്ട്പുട്ട് നാടകീയമായി മികച്ചതാക്കാൻ കഴിയും.
എ) നിങ്ങളുടെ നിയന്ത്രണങ്ങൾ മുന്നിൽ കുത്തിവയ്ക്കുക
"ഒരു ഫംഗ്ഷൻ എഴുതുക..." എന്നതിന് പകരം, ശ്രമിക്കുക:
-
പ്രതീക്ഷിക്കുന്ന ഇൻപുട്ടുകൾ/ഔട്ട്പുട്ടുകൾ
-
പ്രകടന ആവശ്യകതകൾ
-
പിശക് നയം (ഉയർത്തുക, ഫല തരം തിരികെ നൽകുക, ലോഗ് + പരാജയപ്പെടുക?)
-
നാമകരണ സമ്പ്രദായങ്ങൾ
-
നിങ്ങളുടെ റിപ്പോയിൽ നിലവിലുള്ള പാറ്റേണുകൾ
ബി) പരിഹാരങ്ങൾ മാത്രമല്ല, വിട്ടുവീഴ്ചകളും ആവശ്യപ്പെടുക
ഇതുപയോഗിച്ച് ആവശ്യപ്പെടുക:
-
"രണ്ട് സമീപനങ്ങൾ നൽകുകയും ട്രേഡ്-ഓഫുകൾ വിശദീകരിക്കുകയും ചെയ്യുക."
-
"നിങ്ങൾ ഇവിടെ എന്ത് ചെയ്യാതിരിക്കും, എന്തുകൊണ്ട്?"
-
"ഇത് ഉൽപ്പാദനത്തെ എവിടെയാണ് തടസ്സപ്പെടുത്തുക?"
അപകടസാധ്യതകളെക്കുറിച്ച് ചിന്തിക്കാൻ നിർബന്ധിക്കുമ്പോൾ AI മികച്ചതാണ്.
സി) ഡിലീറ്റ് കോഡ് ആക്കുക
ഗൗരവമായി. ചോദിക്കൂ:
-
"അനാവശ്യമായ ഏതെങ്കിലും സംഗ്രഹം നീക്കം ചെയ്യുക."
-
"ഇത് ഏറ്റവും ചെറിയ ശരിയായ പതിപ്പിലേക്ക് മുറിക്കുക."
-
"ഏതൊക്കെ ഭാഗങ്ങളാണ് ഊഹാപോഹങ്ങൾ?"
AI കൂട്ടിച്ചേർക്കാൻ പ്രവണത കാണിക്കുന്നു. മികച്ച എഞ്ചിനീയർമാർ കുറയ്ക്കാനാണ് പ്രവണത കാണിക്കുന്നത്.
D) യാഥാർത്ഥ്യത്തെ പ്രതിഫലിപ്പിക്കുന്ന പരിശോധനകൾ ചേർക്കുക
മാത്രമല്ല:
-
"പ്രതീക്ഷിച്ച ഔട്ട്പുട്ട് നൽകുന്നു"
പക്ഷേ:
-
വിചിത്രമായ ഇൻപുട്ട്
-
വിട്ടുപോയ ഫീൽഡുകൾ
-
കൺകറൻസി
-
ഭാഗിക പരാജയങ്ങൾ
-
ഇന്റഗ്രേഷൻ-ലെവൽ ബിഹേവിയർ (ഗൂഗിളിലെ സോഫ്റ്റ്വെയർ എഞ്ചിനീയറിംഗ്: ലാർജർ ടെസ്റ്റിംഗ്; ദി പ്രാക്ടിക്കൽ ടെസ്റ്റ് പിരമിഡ്)
മറ്റൊന്നും ചെയ്യുന്നില്ലെങ്കിൽ ഇത് ചെയ്യുക. ടെസ്റ്റുകൾ ലൈ ഡിറ്റക്ടർ ആണ്, കോഡ് ആരാണ് എഴുതിയതെന്ന് അവർക്ക് പ്രശ്നമല്ല 😌.
11) സമാപന കുറിപ്പുകൾ + ദ്രുത സംഗ്രഹം 🎯
അപ്പോൾ, AI കോഡ് എങ്ങനെയായിരിക്കും കാണപ്പെടുന്നത്: അത് പലപ്പോഴും വൃത്തിയുള്ളതും, പൊതുവായതും, അൽപ്പം അമിതമായി വിശദീകരിച്ചതും, തൃപ്തിപ്പെടുത്താൻ അൽപ്പം അമിതമായി ആഗ്രഹിക്കുന്നതുമായി കാണപ്പെടുന്നു. വലിയ "പറയുക" എന്നത് ഫോർമാറ്റിംഗോ അഭിപ്രായങ്ങളോ അല്ല - അതിൽ സന്ദർഭം കാണുന്നില്ല: ഡൊമെയ്ൻ നാമകരണം, വിചിത്രമായ എഡ്ജ് കേസുകൾ, ഒരു സിസ്റ്റവുമായി ജീവിക്കുന്നതിലൂടെ ഉണ്ടാകുന്ന ആർക്കിടെക്ചർ-നിർദ്ദിഷ്ട തിരഞ്ഞെടുപ്പുകൾ.
ദ്രുത റീക്യാപ്പ്
-
AI കോഡ് ഒരു ശൈലിയല്ല, പക്ഷേ അത് പലപ്പോഴും വൃത്തിയുള്ളതും, വാചാലവും, അമിതമായി പൊതുവായതുമായി മാറുന്നു.
-
കോഡ് നിങ്ങളുടെ യഥാർത്ഥ നിയന്ത്രണങ്ങളെയും ഉൽപ്പന്ന ഗ്രിറ്റിനെയും പ്രതിഫലിപ്പിക്കുന്നുണ്ടോ എന്നതാണ് ഏറ്റവും നല്ല സൂചന.
-
കണ്ടെത്തലിൽ അമിതമായി ആസക്തി കാണിക്കരുത് - ഗുണനിലവാരത്തിൽ അമിതമായി ആസക്തി കാണിക്കുക: പരിശോധനകൾ, അവലോകനം, വ്യക്തത, ഉദ്ദേശ്യം (ഗൂഗിൾ എഞ്ചിനീയറിംഗ് പ്രാക്ടീസുകൾ: കോഡ് റിവ്യൂ; ഗൂഗിളിലെ സോഫ്റ്റ്വെയർ എഞ്ചിനീയറിംഗ്: യൂണിറ്റ് ടെസ്റ്റിംഗ്).
-
ആദ്യ ഡ്രാഫ്റ്റ് എന്ന നിലയിൽ AI കുഴപ്പമില്ല. അവസാന ഡ്രാഫ്റ്റ് എന്ന നിലയിൽ ഇത് കുഴപ്പമില്ല. അതാണ് മുഴുവൻ കളിയും.
AI ഉപയോഗിച്ചതിന് ആരെങ്കിലും നിങ്ങളെ അപമാനിക്കാൻ ശ്രമിച്ചാൽ, സത്യം പറഞ്ഞാൽ... ആ ശബ്ദത്തെ അവഗണിക്കുക. സോളിഡ് കോഡ് മാത്രം നൽകുക. സോളിഡ് കോഡ് മാത്രമാണ് 💪🙂 നിലനിൽക്കുന്ന ഒരേയൊരു ഫ്ലെക്സ്.
യഥാർത്ഥ ലോക ഉദാഹരണം: AI- ഡ്രാഫ്റ്റ് ചെയ്ത ചെക്ക്ഔട്ട് ബഗ് പരിഹരിക്കൽ അവലോകനം ചെയ്യുന്നു 🛒
രംഗം
ഒരു ചെക്ക്ഔട്ട് പ്രശ്നത്തിന് ഒരു ബഗ് പരിഹരിക്കാൻ ഒരു AI അസിസ്റ്റന്റിനെ ഉപയോഗിക്കുന്ന ഒരു ചെറിയ ഇ-കൊമേഴ്സ് ടീം സങ്കൽപ്പിക്കുക: ഒരു പേയ്മെന്റ് ദാതാവിന്റെ സമയം കഴിയുകയും വീണ്ടും ശ്രമിക്കുക ബട്ടൺ ക്ലിക്ക് ചെയ്യുകയും ചെയ്യുമ്പോൾ ഉപഭോക്താക്കളിൽ നിന്ന് ചിലപ്പോൾ രണ്ടുതവണ നിരക്ക് ഈടാക്കും.
ആദ്യ AI ഡ്രാഫ്റ്റ് വൃത്തിയുള്ളതായി തോന്നുന്നു. ഇത് ഒരു റീട്രൈ ഹെൽപ്പർ ചേർക്കുന്നു, പേയ്മെന്റ് കോളിനെ വിശാലമായ പിശക് കൈകാര്യം ചെയ്യലിൽ പൊതിയുന്നു, എന്തെങ്കിലും പരാജയപ്പെടുമ്പോൾ ഒരു മാന്യമായ സന്ദേശം നൽകുന്നു. ഒറ്റനോട്ടത്തിൽ, ഇത് പ്രൊഫഷണലാണെന്ന് തോന്നുന്നു. എന്നാൽ അപകടസാധ്യത ഉപരിതലത്തിന് തൊട്ടുതാഴെയാണ്: ആദ്യ പേയ്മെന്റ് ശ്രമം ഇതിനകം വിജയിച്ചിട്ടുണ്ടോ എന്ന് കോഡ് പരിശോധിക്കുന്നില്ല.
AI-അസിസ്റ്റഡ് കോഡിന് ഉൽപാദന സമ്മർദ്ദം ആവശ്യമായി വരുന്നത് കൃത്യമായി അവിടെയാണ്. കോഡ് "AI-എഴുതിയത്" പോലെ കാണപ്പെടുന്നു എന്നതല്ല പ്രശ്നം. ടൈംഔട്ട് എന്നാൽ "ഒന്നും സംഭവിച്ചില്ല" എന്നർത്ഥം വരുന്ന ഒരു ശുദ്ധമായ ലോകം അത് അനുമാനിക്കുന്നു എന്നതാണ് പ്രശ്നം.
അസിസ്റ്റന്റിന് എന്താണ് വേണ്ടത്
ബഗ് പരിഹരിക്കാൻ AI-യോട് ആവശ്യപ്പെടുന്നതിന് മുമ്പ്, അതിന് വിശദമായ വിശദാംശങ്ങൾ നൽകുക:
-
പേയ്മെന്റ് ദാതാവിന് 8 സെക്കൻഡിനുശേഷം സമയപരിധി മാറ്റാൻ കഴിയും.
-
ചാർജ് പരാജയപ്പെട്ടുവെന്ന് തെളിയിക്കാൻ ടൈംഔട്ട് ആവശ്യമില്ല.
-
ഓരോ ചെക്ക്ഔട്ടിനും ഒരു അദ്വിതീയ ഓർഡർ ഐഡിയും ഐഡെംപൊട്ടൻസി കീയും ഉണ്ട്.
-
നിലവിലുള്ള റിപ്പോ ഇടപാട് അല്ല, പേയ്മെന്റ് അറ്റംപ്റ്റ് ആണ് ഉപയോഗിക്കുന്നത്.
-
പരാജയപ്പെട്ട പേയ്മെന്റുകൾ orderId, providerRequestId, retryCount എന്നിവ ഉപയോഗിച്ച് ലോഗ് ചെയ്യണം.
-
കാർഡ് വിശദാംശങ്ങളോ വ്യക്തിഗത ഡാറ്റയോ ലോഗുകളിൽ ദൃശ്യമാകരുത്.
-
പരിഹാരത്തിൽ ഡ്യൂപ്ലിക്കേറ്റ്-ക്ലിക്കുകൾ, ദാതാവിന്റെ സമയപരിധി, ഭാഗിക പരാജയങ്ങൾ എന്നിവയ്ക്കുള്ള പരിശോധനകൾ ഉൾപ്പെടുത്തണം.
ഉദാഹരണ നിർദ്ദേശം
ഇരട്ട-ചാർജ് ബഗ് പരിഹരിക്കാൻ നിലവിലുള്ള ചെക്ക്ഔട്ട്-സർവീസ് പാറ്റേണുകൾ ഉപയോഗിക്കുക. ആവശ്യമില്ലെങ്കിൽ ഒരു സാധാരണ റീട്രൈ റാപ്പർ സൃഷ്ടിക്കരുത്. പേയ്മെന്റ്-ദാതാവിന്റെ ടൈംഔട്ടുകളെ പരാജയപ്പെട്ട പേയ്മെന്റുകളായിട്ടല്ല, അജ്ഞാത സ്റ്റാറ്റസായി കണക്കാക്കുക. നിലവിലുള്ള പേയ്മെന്റ്അറ്റംപ്റ്റ് നാമകരണം ഉപയോഗിക്കുക. ഓർഡർ ഐഡിയും ഐഡിംപോട്ടൻസി കീയും ഉപയോഗിച്ച് ഒരു ഐഡിംപോട്ടൻസി പരിശോധന ചേർക്കുക. ഇവയ്ക്കുള്ള പരിശോധനകൾ ഉൾപ്പെടുത്തുക: ഒരു വിജയകരമായ പേയ്മെന്റ്, ടൈംഔട്ട് തുടർന്ന് റീട്രൈ, ഡ്യൂപ്ലിക്കേറ്റ് ബട്ടൺ ക്ലിക്ക്, ക്ലയന്റ് ടൈംഔട്ടിന് ശേഷം ദാതാവിന്റെ വിജയം, providerRequestId കാണുന്നില്ല. പരിഹാരം കഴിയുന്നത്ര ചെറുതാക്കി നിലനിർത്തുക, ഉൽപ്പാദനത്തിൽ ഇത് ഇപ്പോഴും എവിടെ പരാജയപ്പെടുമെന്ന് വിശദീകരിക്കുക.
എങ്ങനെ പരീക്ഷിക്കാം
AI- സഹായത്തോടെയുള്ള കോഡ് അംഗീകരിക്കുന്നതിന് മുമ്പ് ഒരു അവലോകകന് അഞ്ച് ലളിതമായ പരിശോധനകൾ നടത്താൻ കഴിയും:
-
ഒരേ idempotencyKey ഉപയോഗിച്ച് ഒരേ ചെക്ക്ഔട്ട് അഭ്യർത്ഥന രണ്ടുതവണ സമർപ്പിക്കുക.
-
ദാതാവ് പിന്നീട് വിജയം സ്ഥിരീകരിക്കുന്ന ഒരു ദാതാവിന്റെ ടൈംഔട്ട് സിമുലേറ്റ് ചെയ്യുക.
-
ടൈംഔട്ടിന് ശേഷം വീണ്ടും ശ്രമിക്കുക, രണ്ടാമത്തെ ചാർജ് സൃഷ്ടിക്കപ്പെടുന്നില്ലെന്ന് ഉറപ്പാക്കുക.
-
സെൻസിറ്റീവ് ഡാറ്റ ചോരാതെ ശരിയായ ഡീബഗ്ഗിംഗ് ഫീൽഡുകൾക്കായി ലോഗുകൾ പരിശോധിക്കുക.
-
റീട്രൈ ലോജിക് ഒരു പൊതുവായ യൂട്ടിലിറ്റിയിൽ നിന്ന് വ്യത്യസ്തമായി ഈ ലെയറിൽ ഉൾപ്പെടുന്നത് എന്തുകൊണ്ടാണെന്ന് രചയിതാവിനോട് വിശദീകരിക്കാൻ ആവശ്യപ്പെടുക.
ഒരു ദുർബലമായ AI ഡ്രാഫ്റ്റ് സന്തോഷകരമായ പാതയിലൂടെ കടന്നുപോയേക്കാം, പക്ഷേ ടൈംഔട്ട്-തുടർന്നുള്ള വിജയകരമായ കേസിൽ പരാജയപ്പെടും. അതാണ് പരീക്ഷണ രൂപത്തിൽ പ്രത്യക്ഷപ്പെടുന്ന "ക്ലീൻ വേൾഡ്" എന്ന അനുമാനം.
ഫലമായി
ഉദാഹരണ ഫലം: ഈ സാങ്കൽപ്പിക ചെക്ക്ഔട്ട് ബഗിനായി അഞ്ച് കേസുകളുടെ അവലോകന വ്യായാമത്തിന്റെ സമയക്രമീകരണത്തെ അടിസ്ഥാനമാക്കി, AI ഡ്രാഫ്റ്റ് നിർമ്മിക്കാൻ ഏകദേശം 20 മിനിറ്റ് എടുത്തു, പക്ഷേ ആദ്യ പതിപ്പിൽ ആവശ്യമായ 5 പരിശോധനകളിൽ 2 എണ്ണം നഷ്ടപ്പെട്ടു: ഡ്യൂപ്ലിക്കേറ്റ്-ക്ലിക്ക് കൈകാര്യം ചെയ്യലും സമയപരിധിക്ക് ശേഷമുള്ള ദാതാവിന്റെ വിജയകരമായ കൈകാര്യം ചെയ്യലും.
മുകളിലുള്ള ഡൊമെയ്ൻ നിയന്ത്രണങ്ങൾ ചേർത്തതിനുശേഷം, പുതുക്കിയ ഡ്രാഫ്റ്റിൽ 5 ടെസ്റ്റ് കേസുകളും ഉൾപ്പെടുത്തിയിരുന്നു, കൂടാതെ കുറച്ച് മാനുവൽ അവലോകന അഭിപ്രായങ്ങൾ മാത്രമേ ആവശ്യമുള്ളൂ: ആദ്യ ഡ്രാഫ്റ്റിലെ 9 അഭിപ്രായങ്ങളും നിയന്ത്രിത ഡ്രാഫ്റ്റിലെ 3 അഭിപ്രായങ്ങളും. മൊത്തം അവലോകന-പുനർപരിശോധന സമയം ഏകദേശം 55 മിനിറ്റിൽ നിന്ന് 32 മിനിറ്റായി കുറഞ്ഞു.
ഇത് തെളിയിക്കപ്പെട്ട ഒരു ബെഞ്ച്മാർക്ക് അല്ല. തത്സമയ പുൾ അഭ്യർത്ഥനകൾക്കിടയിൽ മൂന്ന് നമ്പറുകൾ ട്രാക്ക് ചെയ്തുകൊണ്ട് ഒരു ടീമിന് പരിശോധിക്കാൻ കഴിയുന്ന ഒരു ഉദാഹരണ കണക്കാണിത്: ഡ്രാഫ്റ്റിൽ നിന്ന് അംഗീകൃത പിആറിലേക്കുള്ള സമയം, അവലോകകരുടെ അഭിപ്രായങ്ങളുടെ എണ്ണം, പരാജയപ്പെട്ട എഡ്ജ്-കേസ് ടെസ്റ്റുകളുടെ എണ്ണം.
എന്ത് തെറ്റ് സംഭവിക്കാം?
ഏറ്റവും അപകടകരമായ തെറ്റ്, "ടൈംഔട്ട്" എന്നത് "പരാജയം" ആയി കണക്കാക്കാൻ AI-യെ അനുവദിക്കുക എന്നതാണ്. പേയ്മെന്റ് സിസ്റ്റങ്ങൾ, ഇമെയിൽ ഡെലിവറി, ബുക്കിംഗ് പ്ലാറ്റ്ഫോമുകൾ, ഇൻവെന്ററി അപ്ഡേറ്റുകൾ, പശ്ചാത്തല ജോലികൾ എന്നിവയിൽ, ആ അനുമാനം തനിപ്പകർപ്പ് പ്രവർത്തനങ്ങൾക്ക് കാരണമാകും.
മറ്റ് സാധാരണ പ്രശ്നങ്ങൾ:
-
റിപ്പോയിൽ പേയ്മെന്റ് അറ്റംപ്റ്റ് ഉപയോഗിക്കുമ്പോൾ, ഇടപാട് പോലുള്ള ഒരു പുതിയ പദം AI കണ്ടുപിടിക്കുന്നു.
-
ഇത് വിശാലമായ പിശകുകൾ കണ്ടെത്തുകയും അടിസ്ഥാന പരാജയം മറച്ചുവെക്കുമ്പോൾ സൗഹൃദപരമായ സന്ദേശം നൽകുകയും ചെയ്യുന്നു.
-
പുനരുപയോഗിക്കാവുന്ന ഒരു പുനഃശ്രമ സഹായിയെ ഇത് ചേർക്കുന്നു, പുനഃശ്രമങ്ങൾ സുരക്ഷിതമല്ലാത്ത സ്ഥലങ്ങളിലേക്ക് മറ്റ് ഡെവലപ്പർമാർക്ക് പകർത്താൻ കഴിയും.
-
ഇത് വളരെയധികം സന്ദർഭങ്ങൾ രേഖപ്പെടുത്തുകയും അബദ്ധവശാൽ സെൻസിറ്റീവ് ഉപഭോക്തൃ ഡാറ്റയോ പേയ്മെന്റ് ഡാറ്റയോ ഉൾപ്പെടുത്തുകയും ചെയ്യുന്നു.
-
ഓരോ ആശ്രിതത്വവും പൂർണ്ണമായി പ്രവർത്തിക്കുമ്പോൾ മാത്രമേ കോഡ് പ്രവർത്തിക്കൂ എന്ന് തെളിയിക്കുന്ന പരിശോധനകൾ ഇത് എഴുതുന്നു.
പ്രായോഗിക ഉപദേശം
AI-അസിസ്റ്റഡ് കോഡ് സുരക്ഷിതമാക്കാനുള്ള ഏറ്റവും നല്ല മാർഗം ആദ്യം അതിന് വ്യക്തമായ വസ്തുതകൾ നൽകുക എന്നതാണ്: യഥാർത്ഥ പേരുകൾ, യഥാർത്ഥ പരാജയ മോഡുകൾ, യഥാർത്ഥ ലോഗുകൾ, യഥാർത്ഥ ടെസ്റ്റ് കേസുകൾ, യഥാർത്ഥ നിയന്ത്രണങ്ങൾ. AI-ക്ക് വൃത്തിയുള്ള പതിപ്പ് വേഗത്തിൽ തയ്യാറാക്കാൻ കഴിയും. ലയിപ്പിക്കുന്നതിന് മുമ്പ് പ്രൊഡക്ഷൻ ഗ്രിറ്റ് ചേർക്കുക എന്നതാണ് നിങ്ങളുടെ ജോലി.
പതിവുചോദ്യങ്ങൾ
കോഡ് എഴുതിയത് AI ആണോ എന്ന് എങ്ങനെ പറയാൻ കഴിയും?
AI- സഹായത്തോടെയുള്ള കോഡ് പലപ്പോഴും വളരെ വൃത്തിയായി കാണപ്പെടുന്നു, മിക്കവാറും “പാഠപുസ്തകം” പോലെ: സ്ഥിരമായ ഫോർമാറ്റിംഗ്, ഏകീകൃത ഘടന, പൊതുവായ നാമകരണം ( ഡാറ്റ, ഇനങ്ങൾ, ഫലം), കൂടാതെ തുല്യമായ, മിനുക്കിയ പിശക് സന്ദേശങ്ങളും. വ്യക്തമായ യുക്തി പുനഃസ്ഥാപിക്കുന്ന ഡോക്സ്ട്രിംഗുകളുടെയോ അഭിപ്രായങ്ങളുടെയോ ഒരു കൂട്ടവും ഇതിൽ വന്നേക്കാം. വലിയ സിഗ്നൽ സ്റ്റൈൽ അല്ല - ഇത് ഇൻ-ദി-വൈൽഡ് ഗ്രിറ്റിന്റെ അഭാവമാണ്: ഡൊമെയ്ൻ ഭാഷ, റെപ്പോ കൺവെൻഷനുകൾ, വിചിത്രമായ നിയന്ത്രണങ്ങൾ, സിസ്റ്റങ്ങളെ ഹോൾഡ് ആക്കുന്ന എഡ്ജ്-കേസ് ഗ്ലൂ.
AI-ജനറേറ്റഡ് പിശക് കൈകാര്യം ചെയ്യുന്നതിൽ ഏറ്റവും വലിയ മുന്നറിയിപ്പ് അടയാളങ്ങൾ എന്തൊക്കെയാണ്?
വിശാലമായ എക്സെപ്ഷൻ ക്യാച്ചുകൾ ( എക്സിപ്ഷൻ ഒഴികെ ), നിശബ്ദമായി ഡിഫോൾട്ടുകൾ തിരികെ നൽകുന്ന വിഴുങ്ങിയ പരാജയങ്ങൾ, "ഒരു പിശക് സംഭവിച്ചു" എന്നതുപോലുള്ള അവ്യക്തമായ ലോഗിംഗ് എന്നിവയ്ക്കായി ശ്രദ്ധിക്കുക . ഈ പാറ്റേണുകൾക്ക് യഥാർത്ഥ ബഗുകൾ മറയ്ക്കാനും ഡീബഗ്ഗിംഗ് ദുരിതപൂർണ്ണമാക്കാനും കഴിയും. ശക്തമായ പിശക് കൈകാര്യം ചെയ്യൽ നിർദ്ദിഷ്ടവും പ്രവർത്തനക്ഷമവുമാണ്, കൂടാതെ സെൻസിറ്റീവ് ഡാറ്റ ലോഗുകളിലേക്ക് ഇടാതെ മതിയായ സന്ദർഭം (ഐഡികൾ, ഇൻപുട്ടുകൾ, അവസ്ഥ) വഹിക്കുന്നു. അമിത പ്രതിരോധം അണ്ടർ-ഡിഫൻസീവ് പോലെ അപകടകരമാണ്.
എന്തുകൊണ്ടാണ് AI കോഡ് പലപ്പോഴും അമിതമായി എഞ്ചിനീയറിംഗ് ചെയ്തതോ അമിതമായി അമൂർത്തീകരിച്ചതോ ആയി തോന്നുന്നത്?
സാങ്കൽപ്പിക ഫ്യൂച്ചറുകൾ പ്രതീക്ഷിക്കുന്ന സഹായ ഫംഗ്ഷനുകൾ, ലെയറുകൾ, ഡയറക്ടറികൾ എന്നിവ ചേർത്ത് "പ്രൊഫഷണലായി തോന്നുക" എന്നതാണ് ഒരു സാധാരണ AI പ്രവണത. process_data() അല്ലെങ്കിൽ handle_request() നിങ്ങളുടെ സിസ്റ്റത്തിന്റെ സീമുകളേക്കാൾ ഒരു ഡയഗ്രാമിന് അനുയോജ്യമായ വൃത്തിയുള്ള മൊഡ്യൂൾ ബൗണ്ടറികളും നിങ്ങൾ കാണും. ഒരു പ്രായോഗിക പരിഹാരം കുറയ്ക്കലാണ്: നിങ്ങൾക്ക് പിന്നീട് പാരമ്പര്യമായി ലഭിച്ചേക്കാവുന്നവയല്ല, നിങ്ങളുടെ ആവശ്യകതകളുമായി പൊരുത്തപ്പെടുന്ന ഏറ്റവും ചെറിയ ശരിയായ പതിപ്പ് ലഭിക്കുന്നതുവരെ സ്പെക്കുലേറ്റീവ് ലെയറുകൾ ട്രിം ചെയ്യുക.
ഒരു യഥാർത്ഥ റിപ്പോയിൽ നല്ല AI- അസിസ്റ്റഡ് കോഡ് എങ്ങനെയിരിക്കും?
ഏറ്റവും മികച്ച AI-അസിസ്റ്റഡ് കോഡ് നിങ്ങളുടെ ടീം അത് അവകാശപ്പെട്ടതുപോലെ വായിക്കുന്നു: ഇത് നിങ്ങളുടെ ഡൊമെയ്ൻ പദങ്ങൾ ഉപയോഗിക്കുന്നു, നിങ്ങളുടെ ഡാറ്റാ രൂപങ്ങളുമായി പൊരുത്തപ്പെടുന്നു, നിങ്ങളുടെ റിപ്പോസിറ്ററി പാറ്റേണുകൾ പിന്തുടരുന്നു, കൂടാതെ നിങ്ങളുടെ ആർക്കിടെക്ചറുമായി വിന്യസിക്കുന്നു. അർത്ഥവത്തായ പരിശോധനകളും ഉദ്ദേശ്യപൂർവ്വമായ അവലോകനവും ഉപയോഗിച്ച് സന്തോഷകരമായ പാതകൾക്കപ്പുറം നിങ്ങളുടെ അപകടസാധ്യതകളെയും ഇത് പ്രതിഫലിപ്പിക്കുന്നു. ലക്ഷ്യം "AI മറയ്ക്കുക" എന്നതല്ല, മറിച്ച് ഡ്രാഫ്റ്റിനെ സന്ദർഭത്തിൽ ഉറപ്പിക്കുക എന്നതാണ്, അങ്ങനെ അത് പ്രൊഡക്ഷൻ കോഡ് പോലെ പ്രവർത്തിക്കുന്നു.
"ക്ലീൻ വേൾഡ്" എന്ന അനുമാനങ്ങളെ ഏറ്റവും വേഗത്തിൽ തുറന്നുകാട്ടുന്ന പരീക്ഷണങ്ങൾ ഏതാണ്?
ഇന്റഗ്രേഷൻ ടെസ്റ്റുകളും എഡ്ജ്-കേസ് ടെസ്റ്റുകളും പ്രശ്നങ്ങൾ വേഗത്തിൽ വെളിപ്പെടുത്താൻ സാധ്യതയുണ്ട്, കാരണം AI ഔട്ട്പുട്ട് പലപ്പോഴും അനുയോജ്യമായ ഇൻപുട്ടുകളും പ്രവചനാതീതമായ ആശ്രിതത്വങ്ങളും സ്വീകരിക്കുന്നു. ഡൊമെയ്ൻ-കേന്ദ്രീകൃത ഫിക്ചറുകൾ ഉപയോഗിക്കുക, വിചിത്രമായ ഇൻപുട്ടുകൾ, നഷ്ടപ്പെട്ട ഫീൽഡുകൾ, ഭാഗിക പരാജയങ്ങൾ, ടൈംഔട്ടുകൾ, കൺകറൻസി എന്നിവ പ്രാധാന്യമുള്ളിടത്ത് ഉൾപ്പെടുത്തുക. കോഡിൽ ഹാപ്പി-പാത്ത് യൂണിറ്റ് ടെസ്റ്റുകൾ മാത്രമേ ഉള്ളൂവെങ്കിൽ, പ്രൊഡക്ഷനിൽ ആരെങ്കിലും പരീക്ഷിക്കാത്ത ഒരു ബട്ടൺ അമർത്തുമ്പോൾ അത് ശരിയായി കാണപ്പെടുകയും പരാജയപ്പെടുകയും ചെയ്യും.
AI-യിൽ എഴുതിയ പേരുകൾ "സാങ്കേതികമായി ശരിയാണെങ്കിലും സാംസ്കാരികമായി തെറ്റാണ്" എന്ന് തോന്നുന്നത് എന്തുകൊണ്ട്?
പല പ്രോജക്റ്റുകളിലും പ്രവർത്തിക്കുന്ന സുരക്ഷിതവും പൊതുവായതുമായ പേരുകൾ AI പലപ്പോഴും തിരഞ്ഞെടുക്കാറുണ്ട്, എന്നാൽ ടീമുകൾ കാലക്രമേണ ഒരു പ്രത്യേക ഭാഷ വികസിപ്പിക്കുന്നു. userId vs AccountId, അല്ലെങ്കിൽ transaction vs LedgerEntry. നിങ്ങളുടെ ഡൊമെയ്നിലും നിയന്ത്രണങ്ങളിലും "അകത്ത്" ജീവിക്കുമ്പോൾ കോഡ് എഴുതിയിട്ടില്ല എന്നതിന്റെ സൂചനയാണ് ഈ നാമകരണ ഡ്രിഫ്റ്റ്.
കോഡ് അവലോകനങ്ങളിൽ AI കോഡ് കണ്ടെത്താൻ ശ്രമിക്കുന്നത് മൂല്യവത്താണോ?
സാധാരണയായി രചയിതാവിന്റെ നിലവാരത്തേക്കാൾ ഗുണനിലവാരം പരിശോധിക്കുന്നതാണ് കൂടുതൽ ഫലപ്രദം. മനുഷ്യർക്ക് വൃത്തിയുള്ളതും അമിതമായി കമന്റ് ചെയ്യുന്നതുമായ കോഡ് എഴുതാനും കഴിയും, കൂടാതെ AI-ക്ക് ഗൈഡഡ് ചെയ്യുമ്പോൾ മികച്ച ഡ്രാഫ്റ്റുകൾ നിർമ്മിക്കാനും കഴിയും. ഡിറ്റക്ടീവ് കളിക്കുന്നതിനുപകരം, ഡിസൈൻ യുക്തിയും ഉൽപ്പാദനത്തിലെ പരാജയ സാധ്യതയും അമർത്തുക. തുടർന്ന് പരിശോധനകൾ, ആർക്കിടെക്ചർ അലൈൻമെന്റ്, പിശക് അച്ചടക്കം എന്നിവ ഉപയോഗിച്ച് സാധൂകരിക്കുക. പ്രഷർ-ടെസ്റ്റിംഗ് വൈബ്-ടെസ്റ്റിംഗിനെ മറികടക്കുന്നു.
കോഡ് കൂടുതൽ വിശ്വസനീയമായി പുറത്തുവരാൻ നിങ്ങൾ എങ്ങനെയാണ് AI-യെ പ്രോംപ്റ്റ് ചെയ്യുന്നത്?
മുൻകൂട്ടി നിയന്ത്രണങ്ങൾ കുത്തിവച്ചുകൊണ്ട് ആരംഭിക്കുക: പ്രതീക്ഷിക്കുന്ന ഇൻപുട്ടുകൾ/ഔട്ട്പുട്ടുകൾ, ഡാറ്റാ രൂപങ്ങൾ, പ്രകടന ആവശ്യങ്ങൾ, പിശക് നയം, നാമകരണ കൺവെൻഷനുകൾ, നിങ്ങളുടെ റിപ്പോയിലെ നിലവിലുള്ള പാറ്റേണുകൾ. പരിഹാരങ്ങൾ മാത്രമല്ല, ട്രേഡ്-ഓഫുകൾക്കായി ആവശ്യപ്പെടുക - “ഇത് എവിടെയാണ് തകരുക?”, “നിങ്ങൾ എന്ത് ഒഴിവാക്കും, എന്തുകൊണ്ട്?” ഒടുവിൽ, നിർബന്ധിതമായി കുറയ്ക്കൽ: അനാവശ്യമായ അമൂർത്തീകരണം നീക്കം ചെയ്യാനും എന്തെങ്കിലും വികസിപ്പിക്കുന്നതിന് മുമ്പ് ഏറ്റവും ചെറിയ ശരിയായ പതിപ്പ് നിർമ്മിക്കാനും അതിനോട് പറയുക.
അവലംബം
-
സ്റ്റാക്ക് ഓവർഫ്ലോ - സ്റ്റാക്ക് ഓവർഫ്ലോ ഡെവലപ്പർ സർവേ 2025 - survey.stackoverflow.co
-
GitHub - GitHub ഒക്ടോബർ (2025 ഒക്ടോബർ 28) - github.blog
-
ഗൂഗിൾ - ഗൂഗിൾ എഞ്ചിനീയറിംഗ് രീതികൾ: കോഡ് അവലോകനത്തിന്റെ നിലവാരം - google.github.io
-
Abseil - Google-ൽ സോഫ്റ്റ്വെയർ എഞ്ചിനീയറിംഗ്: യൂണിറ്റ് ടെസ്റ്റിംഗ് - abseil.io
-
അബ്സീൽ - ഗൂഗിളിലെ സോഫ്റ്റ്വെയർ എഞ്ചിനീയറിംഗ്: കോഡ് അവലോകനം - abseil.io
-
Abseil - Google-ലെ സോഫ്റ്റ്വെയർ എഞ്ചിനീയറിംഗ്: വലിയ പരിശോധന - abseil.io
-
മാർട്ടിൻ ഫൗളർ - മാർട്ടിൻ ഫൗളർ: ഫീച്ചർ ടോഗിൾസ് - martinfowler.com
-
മാർട്ടിൻ ഫൗളർ - പ്രാക്ടിക്കൽ ടെസ്റ്റ് പിരമിഡ് - martinfowler.com
-
OWASP - OWASP ത്രെറ്റ് മോഡലിംഗ് ചീറ്റ് ഷീറ്റ് - cheatsheetseries.owasp.org
-
OWASP - OWASP ലോഗിംഗ് ചീറ്റ് ഷീറ്റ് - cheatsheetseries.owasp.org
-
OWASP - OWASP ടോപ്പ് 10 2025: സുരക്ഷാ ലോഗിംഗും അലേർട്ടിംഗ് പരാജയങ്ങളും - owasp.org
-
ESLint - ESLint ഡോക്സ് - eslint.org
-
GitHub ഡോക്സ് - GitHub CodeQL കോഡ് സ്കാനിംഗ് - docs.github.com
-
ടൈപ്പ്സ്ക്രിപ്റ്റ് - ടൈപ്പ്സ്ക്രിപ്റ്റ്: സ്റ്റാറ്റിക് ടൈപ്പ് ചെക്കിംഗ് - www.typescriptlang.org
-
mypy - mypy ഡോക്യുമെന്റേഷൻ - mypy.readthedocs.io
-
പൈത്തൺ - പൈത്തൺ ഡോക്സ്: പൈത്തൺ പ്രൊഫൈലറുകൾ - docs.python.org
-
പൈറ്റെസ്റ്റ് - പൈറ്റെസ്റ്റ് ഫിക്ചറുകൾ ഡോക്സ് - docs.pytest.org
-
പൈലിന്റ് - പൈലിന്റ് ഡോക്സ്: bare-except - pylint.pycqa.org
-
ആമസോൺ വെബ് സർവീസസ് - AWS പ്രിസ്ക്രിപ്റ്റീവ് ഗൈഡൻസ്: ബാക്ക്ഓഫ് ഉപയോഗിച്ച് വീണ്ടും ശ്രമിക്കുക - docs.aws.amazon.com
-
ആമസോൺ വെബ് സർവീസസ് - AWS ബിൽഡേഴ്സ് ലൈബ്രറി: ടൈംഔട്ടുകൾ, പുനഃശ്രമങ്ങൾ, വിറയലോടെയുള്ള ബാക്ക്ഓഫ് - aws.amazon.com