În ultimii doi ani, echipa mea de la Work & Co și cu mine am testat și am integrat treptat instrumente de codare AI precum Copilot, Cursor, Claude și ChatGPT, pentru a ne ajuta să livrăm experiențe web care sunt folosite de mase. Desigur, după ceva scepticism inițial și câteva momente aha, diverse instrumente AI și-au găsit drumul în utilizarea mea zilnică. De-a lungul timpului, lista de aplicații în care am găsit că a avut sens să lăsăm AI să preia controlul a început să crească, așa că am decis să împărtășesc câteva cazuri practice de utilizare pentru instrumentele AI pentru ceea ce eu numesc „dezvoltatorul responsabil”. Ce vreau să spun prin un dezvoltator responsabil? Trebuie să ne asigurăm că oferim cod de calitate conform așteptărilor părților interesate și clienților noștri. Contribuțiile noastre (adică solicitările de retragere) nu ar trebui să devină o povară pentru colegii noștri, care vor trebui să ne revizuiască și să ne testeze munca. De asemenea, în cazul în care lucrați pentru o companie: instrumentele pe care le folosim trebuie să fie aprobate de angajatorul nostru. Aspectele sensibile, cum ar fi securitatea și confidențialitatea, trebuie gestionate corespunzător: nu lipiți secrete, date despre clienți (PII) sau cod proprietar în instrumente fără aprobarea politicii. Tratează-l ca un cod de la un străin de pe internet. Testați și verificați întotdeauna. Notă: Acest articol presupune o familiaritate de bază cu instrumentele de codare AI, cum ar fi Copilot în VSCode sau Cursor. Dacă toate acestea vă sună complet nou și necunoscute, tutorialele video Github Copilot pot fi un punct de plecare fantastic pentru dvs.

Aplicații utile ale instrumentelor de codare AI Notă: Următoarele exemple se vor concentra în principal pe lucrul în aplicații web bazate pe JavaScript, cum ar fi React, Vue, Svelte sau Angular. Obținerea unei înțelegeri a unei baze de cod necunoscute Nu este neobișnuit să lucrezi pe baze de cod stabilite, iar alăturarea unei baze de cod vechi vechi poate fi intimidantă. Pur și simplu deschideți proiectul și agentul dvs. AI (în cazul meu, Copilot Chat în VSCode) și începeți să puneți întrebări exact așa cum ați pune un coleg. În general, îmi place să vorbesc cu orice agent AI așa cum aș face cu un om. Iată un exemplu de prompt mai rafinat: "Oferiți-mi o privire de ansamblu asupra arhitecturii la nivel înalt: puncte de intrare, rutare, autentificare, strat de date, instrumente de construcție. Apoi enumerați 5 fișiere de citit în ordine. Tratați explicațiile ca ipoteze și confirmați saltând la fișierele de referință."

Puteți continua să puneți întrebări ulterioare precum „Cum funcționează rutarea în detaliu?” sau „Povestiți-mă despre procesul și metodele de autentificare” și vă va conduce către instrucțiuni utile pentru a străluci puțin în întunericul unei baze de cod necunoscute. Triaging Breaking Changes La actualizare a dependențelor Actualizarea pachetelor npm, mai ales atunci când acestea vin cu modificări nerespective, poate fi o muncă obositoare și consumatoare de timp și vă face să depanați o cantitate destul de mare de regresii. Recent, a trebuit să actualizez biblioteca de vizualizare a datelor plotly.js la o versiune majoră de la versiunea 2 la 3 și, ca urmare, etichetarea axelor din unele grafice a încetat să funcționeze. Am continuat să întreb pe ChatGPT: "Mi-am actualizat proiectul Angular care folosește Plotly. Am actualizat plotly.js - pachetul dist de la versiunea 2.35.2 la 3.1.0 - și acum etichetele de pe axa x și y au dispărut. Ce s-a întâmplat?"

Agentul a revenit cu o soluție prompt (vedeți mai jos). Notă: am verificat în continuare explicația față de ghidul oficial de migrare înainte de a expedia remedierea.

Replicarea refactorilor în siguranță peste fișiere Bazele de cod în creștere dezvăluie cu siguranță oportunități de consolidare a codului. De exemplu, observați duplicarea codului între fișiere care pot fi extrase într-o singură funcție sau componentă. Ca rezultat, decideți să creați o componentă partajată care poate fi inclusă în schimb și să efectuați acea refactorare într-un singur fișier. Acum, în loc să efectuați manual acele modificări la fișierele rămase, îi cereți agentului să lanseze refactorul pentru dvs. Agenții vă permit să selectați mai multe fișiere ca context. Odată ce refactorizarea unui fișier este finalizată, pot adăuga atât fișierele refactorizate, cât și cele neatinse în context și pot solicita agentului să lanseze modificările altor fișiere, astfel: „Replicați modificările pe care le-am făcut în fișierul A și în fișierul B”. Implementarea caracteristicilor în tehnologii nefamiliare Unul dintre momentele mele preferate de folosire a instrumentelor de codare AI a fost atunci când m-a ajutat să creez o animație de gradient animată destul de complexă în GLSL, un limbaj cu care nu am fost destul de familiarizat. Într-un proiect recent, designerii noștri au venit cu un gradient animat ca stare de încărcare pe un obiect 3D. Mi-a plăcut foarte mult conceptul și am vrut să ofer ceva unic și interesant clienților noștri. Theproblemă: am avut doar două zile să-l implementez, iar GLSL are o curbă de învățare destul de abruptă. Din nou, un instrument AI (în acest caz, ChatGPT) a fost util și am început pur și simplu să-l solicit să creeze un fișier HTML independent pentru mine, care redă o pânză și un gradient de culoare animat foarte simplu. Pas după pas, am cerut AI să-i adauge mai multă finețe până când am ajuns la un rezultat decent, astfel încât să pot începe să integrez shader-ul în baza mea de cod reală. Rezultatul final: clienții noștri au fost foarte mulțumiți și am furnizat o funcție complexă într-o perioadă scurtă de timp datorită inteligenței artificiale. Teste de scriere Din experiența mea, rareori există suficient timp pe proiecte pentru a scrie și a menține continuu o suită adecvată de teste unitare și de integrare și, în plus, mulți dezvoltatori nu prea se bucură de sarcina de a scrie teste. Îndemnarea asistentului dvs. AI să configureze și să scrie teste pentru dvs. este complet posibilă și se poate face într-o perioadă scurtă de timp. Desigur, tu, în calitate de dezvoltator, ar trebui să te asiguri că testele tale aruncă o privire asupra părților critice ale aplicației tale și urmează principiile de testare sensibile, dar poți „externaliza” scrierea testelor către asistentul nostru AI. Exemplu de prompt: „Scrieți teste unitare pentru această funcție folosind Jest. Acoperiți calea fericită, cazurile marginale și modurile de eșec. Explicați de ce există fiecare test.”

Puteți chiar să transmiteți agentului dvs. cele mai bune practici de testare ale guru-ului de testare Kent C. Dodds ca îndrumări, ca mai jos:

Instrumente interne Oarecum asemănător cu exemplul de shader menționat mai devreme, am fost recent însărcinat să analizez duplicarea codului într-o bază de cod și să compar înainte și după un refactor. Cu siguranță nu este o sarcină trivială dacă nu doriți să mergeți pe calea care necesită timp de a compara fișierele manual. Cu ajutorul Copilot, am creat un script care a analizat duplicarea codului pentru mine, a aranjat și ordonat rezultatul într-un tabel și l-am exportat în Excel. Apoi am făcut un pas mai departe. Când s-a terminat refactorarea codului, i-am cerut agentului să ia foaia Excel existentă ca bază, să adauge starea curentă de duplicare în coloane separate și să calculeze delta. Actualizarea codului scris cu mult timp în urmă Recent, un client vechi de-al meu m-a lovit, deoarece, de-a lungul timpului, câteva funcții nu mai funcționau corect pe site-ul său. Captura: site-ul web a fost construit în urmă cu aproape zece ani, iar JavaScript și SCSS foloseau instrumente de compilare destul de vechi, cum ar fi requireJS, iar configurarea a necesitat o versiune mai veche a Node.js care nici măcar nu ar rula pe MacBook-ul meu 2025. Actualizarea manuală a întregului proces de construire mi-ar fi luat câteva zile, așa că am decis să întreb agentul AI: „Poți să actualizezi procesul de construire JS și SCSS la o stivă lean 2025 precum Vite?” Cu siguranță a făcut-o și, după aproximativ o oră de rafinare cu agentul, mi-am schimbat versiunea SCSS și JS la Vite și m-am putut concentra pe remedierea erorilor reale. Doar asigurați-vă că validați corect fișierele de ieșire și compilate atunci când faceți astfel de modificări integrale în procesul de construire. Rezumat și redactare Doriți să rezumați toate modificările recente ale codului într-o singură propoziție pentru un mesaj de comitere sau să aveți o listă lungă de comenzi și ați dori să le rezumați în trei puncte? Nicio problemă, lăsați AI să se ocupe de asta, dar asigurați-vă că îl corectați. Un exemplu de prompt este la fel de simplu ca mesajul unui om: „Vă rog să rezumați modificările mele recente în puncte concise”. Sfatul meu aici ar fi să utilizați GPT pentru a scrie cu prudență și, ca și în cazul codului, vă rugăm să verificați rezultatul înainte de a trimite sau de a trimite. Recomandări și bune practici Îndemnând Unul dintre beneficiile nu atât de evidente ale utilizării AI este că, cu cât solicitările dvs. sunt mai specifice și personalizate, cu atât rezultatul este mai bun. Procesul de a solicita un agent AI ne obligă să ne formulăm cerințele cât mai specific posibil înainte de a scrie și a codifica. Acesta este motivul pentru care, ca regulă generală, vă recomand cu căldură să fiți cât mai specific posibil cu îndemnurile dvs. Ryan Florence, coautor al cărții Remix, sugerează o modalitate simplă, dar puternică de a îmbunătăți acest proces, terminând solicitarea inițială cu propoziția: „Înainte de a începe, ai întrebări pentru mine?”

În acest moment, AI revine de obicei cu întrebări utile în care vă puteți clarifica intenția specifică, îndrumându-l pe agent să vă ofere o abordare mai personalizată pentru sarcina dvs.

Utilizați controlul versiunilor și lucrați în bucăți digerabile Utilizarea controlului versiunilor ca git nu numai că este utilă atunci când colaborezi ca o echipă pe o singură bază de cod, ci și pentru a te oferi ca uncontribuabil individual cu puncte stabile la care să se retragă în caz de urgență. Datorită naturii sale nedeterministe, AI poate deveni uneori necinstiți și poate face schimbări care pur și simplu nu sunt utile pentru ceea ce încercați să realizați și, în cele din urmă, distruge lucrurile iremediabil. Împărțirea activității în mai multe comiteri vă va ajuta să creați puncte stabile la care puteți reveni în cazul în care lucrurile merg pe plan lateral. Și colegii tăi îți vor mulțumi, de asemenea, deoarece le va fi mai ușor să revizuiască codul tău atunci când acesta este împărțit în bucăți bine structurate din punct de vedere semantic. Examinați cu atenție Aceasta este mai degrabă o bună practică generală, dar, în opinia mea, devine și mai importantă atunci când utilizați instrumente AI pentru munca de dezvoltare: fiți primul examinator critic al codului dvs. Asigurați-vă că vă acordați ceva timp pentru a trece peste modificările dvs. rând cu rând, la fel cum ați examina codul altcuiva și trimiteți-vă lucrarea numai după ce trece propria dvs. auto-evaluare. "Două lucruri sunt amândouă adevărate pentru mine în acest moment: agenții AI sunt uimitoare și o creștere uriașă a productivității. Sunt, de asemenea, mașini masive de slop dacă îți oprești creierul și îi dai drumul complet." - Armin Ronacher în postarea sa de blog Agent Psychosis: Are We Going Insane?

Concluzie și gânduri critice În opinia mea, instrumentele de codare AI ne pot îmbunătăți productivitatea ca dezvoltatori în fiecare zi și eliberează capacitatea mentală pentru mai multă planificare și gândire la nivel înalt. Ne obligă să articulăm rezultatul dorit cu detalii meticuloase. Orice IA poate, uneori, să halucineze, ceea ce înseamnă practic că se află pe un ton încrezător. Prin urmare, asigurați-vă că verificați și testați, mai ales când aveți îndoieli. AI nu este un glonț de argint și cred că excelența și capacitatea de a rezolva probleme ca dezvoltator nu se vor demoda niciodată. Pentru dezvoltatorii care abia la început în carieră, aceste instrumente pot fi foarte tentante să facă cea mai mare parte a muncii pentru ei. Ceea ce se poate pierde aici este munca adesea epuizantă și dureroasă prin bug-uri și probleme care sunt dificil de depanat și rezolvat, alias „macinarea”. Chiar și Lee Robinson, de la Cursor AI, pune întrebări în una dintre postările sale:

Instrumentele de codare AI evoluează într-un ritm rapid și sunt încântat de ceea ce va urma. Sper că ați găsit acest articol și sfaturile sale utile și sunteți încântați să încercați unele dintre acestea pentru dvs.

You May Also Like

Enjoyed This Article?

Get weekly tips on growing your audience and monetizing your content — straight to your inbox.

No spam. Join 138,000+ creators. Unsubscribe anytime.

Create Your Free Bio Page

Join 138,000+ creators on Seemless.

Get Started Free