Počas posledných dvoch rokov sme s mojím tímom v Work & Co testovali a postupne integrovali nástroje na kódovanie AI, ako sú Copilot, Cursor, Claude a ChatGPT, aby sme nám pomohli šíriť webové skúsenosti, ktoré používajú masy. Priznám sa, že po počiatočnej skepse a pár aha momentoch si rôzne nástroje AI našli cestu do môjho každodenného používania. Postupom času začal rásť zoznam aplikácií, v ktorých sme zistili, že má zmysel nechať AI prevziať kontrolu, a tak som sa rozhodol podeliť o niekoľko praktických prípadov použitia nástrojov AI pre toho, čo nazývam „zodpovedný vývojár“. Čo myslím pod pojmom zodpovedný vývojár? Musíme sa uistiť, že poskytujeme kvalitný kód podľa očakávania našich zainteresovaných strán a klientov. Naše príspevky (t. j. žiadosti o stiahnutie) by sa nemali stať záťažou pre našich kolegov, ktorí budú musieť kontrolovať a testovať našu prácu. Tiež v prípade, že pracujete pre spoločnosť: Nástroje, ktoré používame, musia byť schválené naším zamestnávateľom. S citlivými aspektmi, ako je bezpečnosť a súkromie, je potrebné správne zaobchádzať: Nevkladajte tajomstvá, údaje o zákazníkoch (PII) ani vlastný kód do nástrojov bez schválenia zásadami. Zaobchádzajte s tým ako s kódom od cudzinca na internete. Vždy testujte a overujte. Poznámka: Tento článok predpokladá niektoré veľmi základné znalosti o nástrojoch na kódovanie AI, ako je Copilot vo VSCode alebo Cursor. Ak vám toto všetko znie úplne nové a neznáme, videonávody Github Copilot môžu byť pre vás fantastickým východiskovým bodom.

Užitočné aplikácie nástrojov na kódovanie AI Poznámka: Nasledujúce príklady sa zamerajú hlavne na prácu vo webových aplikáciách založených na JavaScripte, ako sú React, Vue, Svelte alebo Angular. Pochopenie neznámej kódovej základne Nie je nezvyčajné pracovať na zavedených kódových základniach a pripojenie k veľkej starej kódovej základni môže byť zastrašujúce. Jednoducho otvorte svoj projekt a svojho AI agenta (v mojom prípade Copilot Chat vo VSCode) a začnite klásť otázky rovnako, ako by ste sa pýtali kolegu. Vo všeobecnosti sa rád rozprávam s akýmkoľvek agentom AI tak, ako by som hovoril s iným človekom. Tu je presnejší príklad výzvy: "Poskytnite mi prehľad architektúry na vysokej úrovni: vstupné body, smerovanie, overenie, dátová vrstva, nástroje na zostavovanie. Potom uveďte 5 súborov na čítanie v poradí. Vysvetlenia považujte za hypotézy a potvrďte prechodom na referenčné súbory."

Môžete klásť doplňujúce otázky, ako napríklad „Ako podrobne funguje smerovanie?“ alebo „Porozprávajte sa so mnou o procese a metódach autentifikácie“ a zavedie vás k užitočným pokynom, aby ste zažiarili trochu svetla do tmy neznámej kódovej základne. Triaging Prelomové zmeny pri inovácii závislostí Aktualizácia balíkov npm, najmä keď prichádzajú s prelomovými zmenami, môže byť únavná a časovo náročná práca a prinúti vás odladiť značné množstvo regresií. Nedávno som musel aktualizovať knižnicu vizualizácie údajov plotly.js o jednu hlavnú verziu z verzie 2 na verziu 3 a v dôsledku toho prestalo fungovať označovanie osí v niektorých grafoch. Ďalej som sa spýtal ChatGPT: "Aktualizoval som svoj projekt Angular, ktorý používa Plotly. Aktualizoval som plotly.js - balík dist z verzie 2.35.2 na 3.1.0 - a teraz sú štítky na osi x a y preč. Čo sa stalo?"

Agent sa okamžite vrátil s riešením (pozrite sa nižšie). Poznámka: Pred odoslaním opravy som ešte overil vysvetlenie oproti oficiálnemu sprievodcovi migráciou.

Bezpečná replikácia refaktorov naprieč súbormi Rastúce databázy kódov určite odhaľujú príležitosti na konsolidáciu kódu. Napríklad si všimnete duplicitu kódu v súboroch, ktoré možno extrahovať do jednej funkcie alebo komponentu. V dôsledku toho sa rozhodnete vytvoriť zdieľaný komponent, ktorý možno namiesto toho zahrnúť, a vykonať tento refaktor v jednom súbore. Teraz namiesto manuálneho vykonávania týchto zmien vo vašich zostávajúcich súboroch požiadate svojho agenta, aby vám spustil refaktor. Agenti vám umožňujú vybrať viacero súborov ako kontext. Keď je refaktor pre jeden súbor hotový, môžem pridať refaktorované aj nedotknuté súbory do kontextu a vyzvať agenta, aby zaviedol zmeny do iných súborov, ako je tento: „Zopakujte zmeny, ktoré som urobil v súbore A, aj do súboru B“. Implementácia funkcií v neznámych technológiách Jedným z mojich obľúbených momentov pri používaní nástrojov na kódovanie AI bolo, keď mi to pomohlo vytvoriť pomerne zložitú animovanú gradientnú animáciu v GLSL, jazyku, ktorý som dosť nepoznal. V nedávnom projekte naši dizajnéri vymysleli animovaný prechod ako stav načítania na 3D objekte. Tento koncept sa mi veľmi páčil a chcel som našim klientom dodať niečo jedinečné a vzrušujúce. Theproblém: Na implementáciu som mal len dva dni a GLSL má dosť strmú krivku učenia. Opäť mi prišiel vhod nástroj AI (v tomto prípade ChatGPT) a začal som ho celkom jednoducho vyzývať, aby mi vytvoril samostatný súbor HTML, ktorý vykreslí plátno a veľmi jednoduchý animovaný farebný prechod. Krok za krokom som vyzval AI, aby k tomu pridala viac jemností, kým som nedospela k slušnému výsledku, aby som mohla začať integrovať shader do svojej skutočnej kódovej základne. Konečný výsledok: Naši klienti boli veľmi spokojní a vďaka AI sme poskytli komplexnú funkciu v krátkom čase. Písanie testov Podľa mojich skúseností je na projektoch málokedy dostatok času na nepretržité písanie a udržiavanie správnej sady jednotkových a integračných testov, a navyše mnohí vývojári nemajú v skutočnosti radi písanie testov. Vyzvať svojho pomocníka AI, aby za vás nastavil a napísal testy, je úplne možné a dá sa to urobiť za krátky čas. Samozrejme, ako vývojár by ste sa mali stále uistiť, že vaše testy skutočne skúmajú kritické časti vašej aplikácie a dodržiavajú rozumné princípy testovania, ale písanie testov môžete „outsourcovať“ nášmu pomocníkovi AI. Príklad výzvy: "Píšte testy jednotiek pre túto funkciu pomocou Jest. Pokryte šťastnú cestu, okrajové prípady a režimy zlyhania. Vysvetlite, prečo každý test existuje."

Môžete dokonca odovzdať osvedčené postupy testovania guru Kenta C. Doddsa ako pokyny svojmu agentovi, ako je uvedené nižšie:

Vnútorné nástroje Niečo podobné ako v predtým spomenutom príklade shadera som mal nedávno za úlohu analyzovať duplikáciu kódu v kódovej základni a porovnať pred a po refaktore. Určite to nie je triviálna úloha, ak nechcete ísť časovo náročnou cestou manuálneho porovnávania súborov. S pomocou Copilota som vytvoril skript, ktorý mi analyzoval duplikáciu kódu, usporiadal a usporiadal výstup do tabuľky a exportoval ho do Excelu. Potom som to urobil o krok ďalej. Keď bol náš kódový refaktor dokončený, vyzval som agenta, aby vzal môj existujúci excelový hárok ako základ, pridal aktuálny stav duplikácie do samostatných stĺpcov a vypočítal delta. Aktualizácia kódu napísaného už dávno Nedávno ma napadol jeden môj starý klient, keďže postupom času už na jeho webe niekoľko funkcií nefungovalo správne. Háčik: Webová stránka bola vytvorená takmer pred desiatimi rokmi a JavaScript a SCSS používali dosť staré kompilačné nástroje, ako napríklad requireJS, a nastavenie si vyžadovalo staršiu verziu Node.js, ktorá by sa na mojom MacBooku 2025 ani nespustila. Ručná aktualizácia celého procesu zostavovania by mi zabrala niekoľko dní, a tak som sa rozhodol vyzvať agenta AI: „Môžete aktualizovať proces zostavovania JS a SCSS na štíhly zásobník 2025 ako Vite?“ Určite áno a asi po hodine zdokonaľovania s agentom som mal zostavu SCSS a JS prepnutú na Vite a mohol som sa sústrediť na skutočné opravy chýb. Len sa uistite, že ste správne overili výstupné a kompilované súbory pri vykonávaní takýchto integrálnych zmien vo vašom procese zostavovania. Zhrnutie a vypracovanie Chceli by ste zhrnúť všetky svoje nedávne zmeny v kóde do jednej vety pre správu odovzdania alebo máte dlhý zoznam odovzdaní a chceli by ste ich zhrnúť do troch odrážok? Žiaden problém, nech sa o to postará AI, ale nezabudnite si to prečítať. Príklad výzvy je taký jednoduchý ako odoslanie správy druhému človeku: „Prosím, zhrňte moje nedávne zmeny v stručných odrážkach“. Moja rada je, aby ste na písanie používali značku GPT opatrne a rovnako ako v prípade kódu skontrolujte výstup pred odoslaním alebo odoslaním. Odporúčania a osvedčené postupy Podnecovanie Jednou z nie tak zrejmých výhod používania AI je, že čím konkrétnejšie a prispôsobené sú vaše výzvy, tým lepší je výstup. Proces vyzývania agenta AI nás núti formulovať naše požiadavky čo najkonkrétnejšie predtým, ako napíšeme a kódujeme. To je dôvod, prečo ako všeobecné pravidlo dôrazne odporúčam byť pri nabádaní čo najkonkrétnejší. Ryan Florence, spoluautor knihy Remix, navrhuje jednoduchý, ale účinný spôsob, ako tento proces vylepšiť tak, že úvodnú výzvu dokončí vetou: "Skôr ako začneme, máte na mňa nejaké otázky?"

V tomto bode sa AI zvyčajne vráti s užitočnými otázkami, kde môžete objasniť svoj konkrétny zámer a viesť agenta k tomu, aby vám poskytol prispôsobenejší prístup k vašej úlohe.

Využite kontrolu verzií a pracujte v stráviteľných kúskoch Používanie kontroly verzií, ako je git, sa hodí nielen pri tímovej spolupráci na jedinej kódovej základni, ale aj pri poskytovaníindividuálny prispievateľ so stabilnými bodmi, ku ktorým sa možno vrátiť v prípade núdze. Vďaka svojej nedeterministickej povahe sa AI môže niekedy zblázniť a urobiť zmeny, ktoré jednoducho nie sú užitočné pre to, čo sa snažíte dosiahnuť, a nakoniec veci nenapraviteľne rozbijú. Rozdelenie vašej práce do viacerých odovzdaní vám pomôže vytvoriť stabilné body, ku ktorým sa môžete vrátiť v prípade, že veci idú bokom. A vaši spoluhráči vám tiež poďakujú, pretože budú mať ľahší čas na kontrolu vášho kódu, keď bude rozdelený na sémanticky dobre štruktúrované časti. Dôkladne skontrolujte Toto je skôr všeobecný osvedčený postup, ale podľa môjho názoru sa stáva ešte dôležitejším pri používaní nástrojov AI na vývojovú prácu: Buďte prvým kritickým kontrolórom svojho kódu. Uistite sa, že si prejdete svoje zmeny riadok po riadku, rovnako ako by ste skontrolovali kód niekoho iného, ​​a svoju prácu odošlite až vtedy, keď prejde vašou vlastnou kontrolou. "Dve veci sú pre mňa momentálne pravdivé: Agenti AI sú úžasní a prinášajú obrovské zvýšenie produktivity. Sú to tiež obrovské mašiny, ak vypnete mozog a úplne ho pustíte." — Armin Ronacher vo svojom blogovom príspevku Agent Psychosis: Are We Going Insane?

Záver a kritické myšlienky Podľa môjho názoru môžu nástroje na kódovanie AI zlepšiť našu produktivitu ako vývojárov na dennej báze a uvoľniť mentálnu kapacitu pre viac plánovania a myslenia na vysokej úrovni. Nútia nás formulovať požadovaný výsledok s precíznymi detailmi. Akákoľvek AI môže občas halucinovať, čo v podstate znamená, že spočíva v sebavedomom tóne. Nezabudnite preto skontrolovať a otestovať, najmä ak máte pochybnosti. AI nie je strieborná guľka a verím, že dokonalosť a schopnosť riešiť problémy ako vývojár nikdy nevyjde z módy. Pre vývojárov, ktorí práve začínajú svoju kariéru, môžu byť tieto nástroje veľmi lákavé urobiť väčšinu práce za nich. Čo sa tu môže stratiť, je často vyčerpávajúca a bolestivá práca s chybami a problémami, ktoré je ťažké odladiť a vyriešiť, alias „brúska“. Dokonca aj samotný Lee Robinson z Cursor AI to spochybňuje v jednom zo svojich príspevkov:

Nástroje na kódovanie AI sa vyvíjajú rýchlym tempom a som nadšený z toho, čo príde ďalej. Dúfam, že vám tento článok a jeho tipy pomohli a radi si niektoré z nich sami vyskúšate.

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