Awọn anfani:
- Agbara lati lo AI bi oju keji ni atunyẹwo koodu fun kika, ọgbọn ati aabo
- Agbara lati gbero awọn igbesẹ atunṣe pẹlu atilẹyin AI laisi idalọwọduro ihuwasi koodu eka
- Agbara lati rii daju atunyẹwo AI ati ṣatunkọ awọn iṣeduro pẹlu idanwo ati lafiwe iṣakoso ẹya
Ninu imọ-ẹrọ sọfitiwia, koodu ti ka pupọ diẹ sii ju ti kikọ lọ. Laini koodu ti wa ni kikọ lẹẹkan, ṣugbọn ti wa ni kika, tunṣe ati itumọ ti lori dosinni ti igba lori papa ti awọn osu. Ti o ni idi ti atunyẹwo koodu (iyẹwo ẹnikan tabi koodu tirẹ fun ọgbọn, kika ati aabo) ati atunṣe (imudara eto koodu laisi iyipada ihuwasi rẹ) wa ni ọkan ti imọ-ẹrọ. AI di “oju keji” ti o lagbara fun awọn iṣẹ-ṣiṣe meji wọnyi: o ni iyanju iyara kika, tọka si imọran aṣemáṣe ati awọn ọran aabo, ati fifọ atunṣe nla sinu awọn igbesẹ ailewu kekere. Ṣugbọn ofin pataki kan wa: atunṣe ko yẹ ki o yipada ihuwasi, ati pe ohun kan ti o ṣe iṣeduro eyi ni idanwo.
Ninu ẹyọ yii, a yoo rii bii o ṣe le lo AI ni ọna iṣeto fun atunyẹwo koodu, bii o ṣe le ṣatunṣe koodu eka laisi fifọ ihuwasi rẹ, ati bii o ṣe le ṣakoso gbese imọ-ẹrọ (awọn ipinnu koodu iyara ṣugbọn idiyele).
Awọn imọran: Gbese imọ-ẹrọ: Awọn ipinnu koodu ti a ṣe loni fun iyara ti o jẹ ki itọju ṣe nira ni ọjọ iwaju. Olfato koodu: Awọn awoṣe ti kii ṣe awọn aṣiṣe funrararẹ ṣugbọn tọka si awọn iṣoro (awọn iṣẹ pipẹ, koodu atunwi). Padasẹyin: Nigbati iyipada ba fọ nkan ti o ṣiṣẹ tẹlẹ.
Lilo AI ni Atunwo koodu Iṣeto
Nigbati akoko ba ni opin, o jẹ dandan lati dojukọ awọn ọran eewu ti o ga julọ. Awọn ọna kika laifọwọyi n ṣe itọju awọn oran kika gẹgẹbi indentation ati aaye; O gbọdọ ṣe akiyesi akiyesi eniyan si ọgbọn, aabo, ati ihuwasi ọran eti. Nigbati o ba ni atunyẹwo AI, beere fun atokọ ti o ni iṣaaju, kii ṣe agbero ti awọn atunwo.
- Fun awọn dopin. Kini koodu, kini lati ṣe, ninu ipo wo ni o ṣiṣẹ.
- Pato ipo ayo . Yiye ati aabo ni akọkọ, kika ni keji.
- Beere fun atunse nja. "Kini idi iṣoro naa" ati "atunṣe iṣeduro" fun wiwa kọọkan.
- O jẹrisi awọn awari. AI tun ṣe agbejade awọn idaniloju eke; Daju wiwa kọọkan lodi si koodu ati idanwo.
Atunwo atunwo ti a ṣe igbekale: "Ṣayẹwo iṣẹ wọnyi bi ẹlẹrọ oga. Ṣe atokọ awọn awari ni aṣẹ pataki ki o samisi wọn pẹlu awọn afi wọnyi: [CRITICAL] logic / security, [LAW] eti case / Performance, [LOW] readability/name. Fun wiwa kọọkan: idi ti o beere, imọran atunṣe nja. MAA ṢE ṢE ṢE ṢE ṢEṢE kika kika / awọn ọran adaṣe koodu.”
Atunwo idojukọ aifọwọyi-aabo: "Ṣayẹwo koodu yii fun awọn idi aabo nikan: aini afọwọsi titẹ sii, ewu ti abẹrẹ, aini iṣakoso aṣẹ, jijo ti alaye asiri, awọn aṣiṣe ti ko ni aabo. Fi apẹẹrẹ ikọlu apẹẹrẹ si wiwa kọọkan. Ti ko ba si ọrọ aabo, sọ kedere 'Emi ko ri eyikeyi awọn oran aabo to ṣe pataki'. Koodu: [koodu]"
Išọra: Nitoripe AI sọ pe "ko si iṣoro" kii ṣe ẹri pe ko si iṣoro. AI le gbe awọn odi eke; le fori a gidi aabo oro. Awọn afikun atunyẹwo AI, kii ṣe rọpo, atunyẹwo eniyan ati idanwo aabo. Ni koodu pataki-aabo, ẹlẹrọ ti o ni oye ni ọrọ ikẹhin.
Idanwo-dabo Refactoring
Ofin goolu ti atunṣe: idanwo akọkọ, yipada nigbamii. Ṣaaju ki o to ṣatunṣe koodu naa, awọn idanwo yẹ ki o wa ti o tii ihuwasi lọwọlọwọ ki o mọ lẹsẹkẹsẹ ti iyipada ba fọ nkan kan. Maṣe ba aṣẹ naa jẹ nigbati o ni atunṣe AI.
- Fi ihuwasi lọwọlọwọ si idanwo. Bibẹẹkọ, jẹ ki AI gbejade “idanwo ihuwasi” (idanwo ti o mu ihuwasi lọwọlọwọ bi o ti jẹ).
- Ṣe atunṣe ni awọn igbesẹ kekere. Idanwo gbọdọ jẹ alawọ ewe ni gbogbo igbesẹ.
- Ṣiṣe rẹ lẹhin igbesẹ kọọkan. Yẹ ifaseyin tete.
Ailewu atunṣe eto tọ: "Iṣẹ 60-ila atẹle naa ṣe pupọ ati pe o ṣoro lati ka. Mo fẹ lati ṣe atunṣe LAYI iyipada ihuwasi rẹ. Ni akọkọ: ṣe akojọ awọn idanwo idanwo ti mo nilo lati tii ihuwasi ti isiyi. Lẹhinna: fọ atunṣe naa sinu awọn igbesẹ kekere, kọọkan ti o le ṣee ṣe nigba ti awọn idanwo jẹ alawọ ewe. Maṣe kọ koodu naa sibẹsibẹ, fun eto naa ni akọkọ.
Ailagbara Tọ / Alagbara Tọ
Alailagbara: "Ṣe koodu yii dara si." (Esi: koyewa ohun ti lati mu; AI ṣe lainidii ayipada, le yi ihuwasi laiparuwo.) ALAGBARA: "Refactor yi owo isiro iṣẹ fun readability. IPA: ihuwasi gbọdọ wa ni pato kanna, pada iye ko gbodo yi. Pipin awọn gun iṣẹ sinu itumo IwUlO awọn iṣẹ, jijẹ awọn idan awọn nọmba to ti a npè ni awọn ibakan. Akojọ ayipada koodu nipa ohun kan ati ki o se alaye IDI kọọkan ohun kan ko ni yi koodu.
Itọkasi ti o lagbara n sọ ni kedere pe “iwa gbọdọ wa ni deede kanna” ihamọ ati ohun ti o nilo lati ni ilọsiwaju. Laisi idiwọ yii, AI le yi ọgbọn pada ni orukọ “ilọsiwaju” ati gbejade ipalọlọ ipalọlọ.
Ṣiṣakoso gbese Imọ-ẹrọ
Ona
Ni kukuru igba
ni igba pipẹ
aibikita gbese
sare itesiwaju
Paralysis itọju, ẹgbẹ fa fifalẹ
atunko ohun gbogbo
Iduro ẹya idagbasoke
Ipadabọ ti ko ni idaniloju, eewu giga
Tiwọn, atunṣe-idaabobo idanwo
kekere slowdown
Iyara alagbero
Ọna ti o ni ilera julọ ni ẹkẹta: jẹ ki gbese naa han (tọpa rẹ ni akojọ), bẹrẹ ibi ti o dun julọ, ati idanwo-ẹri kọọkan atunṣe. AI jẹ iranlọwọ ti o dara ni idamo ati iṣaju awọn nkan gbese, ṣugbọn iru gbese lati sanwo jẹ ipinnu iṣowo.
Awọn ọran Mini
Ọran 1 - ipalọlọ ipalọlọ. Olùgbéejáde kan sọ fun AI lati “rọrun iṣẹ yii”; AI tumọ ipo kan ni aṣiṣe ati pe iṣiro ipadabọ ti bajẹ. Niwọn igba ti ko si idanwo, aṣiṣe waye lẹhin ọsẹ 3 pẹlu ẹdun alabara kan. Ẹgbẹ naa n ṣe iṣẹ kanna nipa kikọ akọkọ idanwo kikọ kan ati mu aṣiṣe pẹlu idanwo pupa kan ni ibẹrẹ akọkọ.
Case 2 - Wulo oju keji. Ninu atunyẹwo koodu kan, AI mọ pe aṣẹ olumulo nikan ni a ṣayẹwo ni wiwo kii ṣe lori olupin naa. Eyi jẹ ailagbara wiwọle laigba aṣẹ. Onimọ-ẹrọ ṣafikun ṣiṣe ayẹwo aṣẹ-ẹgbẹ olupin; Ayewo AI ṣe idiwọ iṣẹlẹ aabo gangan.
Ọran 3 - Iro rere. AI sọ pe "oniyipada yii ko lo rara, paarẹ"; Bibẹẹkọ, a lo ni aiṣe-taara nipasẹ ẹrọ isọtẹlẹ oniyipada. Ti ẹlẹrọ naa ko ba jẹrisi aba naa lodi si idanwo naa, yoo paarẹ ati pe aṣiṣe akoko asiko yoo waye. Gbogbo wiwa AI gbọdọ jẹrisi ṣaaju imuse.
Awọn aṣiṣe ti o wọpọ
- Refactoring lai igbeyewo. Ko si ohun ti o kù lati rii daju pe ihuwasi wa ni ipamọ.
- Lilo awọn awari AI laisi ifọwọsi wọn. Eke rere ati eke odi mejeeji ṣẹlẹ.
- Jafara akoko eniyan lori awọn iṣoro kika. Idojukọ lori awọn iṣẹ ṣiṣe ti o le yanju nipasẹ awọn irinṣẹ adaṣe ṣiji awọn eewu gidi bò.
- Gbigba idahun "Ko si iṣoro" bi ẹri. AI le fori ailagbara; eniyan awotẹlẹ wa ni ti beere.
- Gbiyanju lati san gbogbo gbese ni ẹẹkan. Major rewrites ni o wa eewu; Awọn igbesẹ ti o jẹ iwọn ati aabo nipasẹ idanwo ni o fẹ.
Ni soki
Atunwo koodu ati atunṣe ṣe ipinnu gigun ti koodu naa. AI jẹ oju keji ti o lagbara ati olupilẹṣẹ ero: pese awọn awari pataki, awọn oju iṣẹlẹ aabo, ati awọn ero isọdọtun-kekere. Ṣugbọn atunṣe ko yẹ ki o yipada ihuwasi, ati pe idanwo nikan ṣe iṣeduro eyi. Sooto gbogbo wiwa AI lodi si koodu ati idanwo; Maṣe gba idahun "ko si iṣoro" gẹgẹbi ẹri. Jẹ ki gbese imọ-ẹrọ han ki o sanwo ni iwọn, awọn igbesẹ aabo idanwo.
Ohun elo iṣẹ-ṣiṣe
Mu laini 40-70 kan, iṣẹ idiju diẹ ti o ni (tabi ni ipilẹṣẹ AI). Ni akọkọ tẹle itọsi atunyẹwo ti iṣeto ati to awọn awari bi [CRITICAL]/[Alabọde]/[LOW]; Pẹlu ọwọ jẹrisi o kere ju wiwa kan lodi si koodu naa. Lẹhinna, pẹlu itọsẹ eto isọdọtun ailewu, kọkọ ṣe ipilẹṣẹ ati ṣiṣe awọn idanwo kikọ, lẹhinna lo isọdọtun ni awọn igbesẹ kekere ki o rii daju pe awọn idanwo naa wa alawọ ewe ni igbesẹ kọọkan.
akojọ ayẹwo
- [] Mo ti eleto awotẹlẹ pẹlu ayo afi (lominu ni / alabọde / kekere).
- [] Mo ti jẹrisi o kere ju wiwa AI kan lodi si koodu/idanwo naa.
- [] Mo ti ni idanwo awọn ti isiyi ihuwasi ṣaaju ki o to refactoring.
- [] Mo ṣe awọn ayipada ni awọn igbesẹ kekere ati ṣiṣe awọn idanwo ni igbesẹ kọọkan.
- [] Mo pato ni "iwa gbọdọ wa ni kanna" ihamọ ninu awọn tọ.
- [] Mo ti jẹrisi pe awọn awari aabo nilo ijẹrisi eniyan.