Viimase kahe aasta jooksul oleme ettevõtte Work & Co meeskonnaga katsetanud ja järk-järgult integreerinud tehisintellekti kodeerimistööriistu, nagu Copilot, Cursor, Claude ja ChatGPT, et aidata meil edastada massidele kasutatavaid veebikogemusi. Tuleb tunnistada, et peale mõningast esialgset skepsistamist ja paari ahaa-hetke on erinevad AI tööriistad leidnud tee minu igapäevasesse kasutusse. Aja jooksul hakkas kasvama nende rakenduste loend, mille puhul oli mõistlik lasta tehisintellektil üle võtta, nii et otsustasin jagada mõningaid praktilisi kasutusjuhtumeid tehisintellekti tööriistade kohta, mida ma nimetan "vastutustundlikuks arendajaks". Mida ma mõtlen vastutustundliku arendaja all? Peame tagama, et edastame kvaliteedikoodi, nagu meie sidusrühmad ja kliendid eeldavad. Meie panused (st tõmbetaotlused) ei tohiks muutuda koormaks meie kolleegidele, kes peavad meie tööd üle vaatama ja testima. Samuti juhul, kui töötate ettevõttes: meie kasutatavad tööriistad peavad saama heakskiidu meie tööandjalt. Tundlikke aspekte, nagu turvalisus ja privaatsus, tuleb õigesti käsitleda: ärge kleepige tööriistadesse saladusi, kliendiandmeid (PII) ega varalist koodi ilma eeskirjade kinnitamata. Kohtle seda nagu internetis võõra inimese koodi. Alati testige ja kontrollige. Märkus. See artikkel eeldab mõningaid väga elementaarseid teadmisi AI kodeerimistööriistadega, nagu Copilot VSCode'is või kursoris. Kui see kõik tundub teile täiesti uus ja harjumatu, võivad Githubi Copiloti videoõpetused olla teie jaoks fantastiline lähtepunkt.

AI kodeerimistööriistade kasulikud rakendused Märkus. Järgmised näited keskenduvad peamiselt JavaScriptil põhinevates veebirakendustes (nt React, Vue, Svelte või Angular) töötamisele. Tundmatust koodibaasi mõistmine Pole haruldane töötada väljakujunenud koodibaasidel ja suure pärandkoodibaasiga liitumine võib olla hirmutav. Lihtsalt avage oma projekt ja tehisintellekti agent (minu puhul Copilot Chat VSCode'is) ning hakake küsimusi esitama täpselt nii, nagu küsiksite kolleegilt. Üldiselt meeldib mulle iga tehisintellekti agendiga rääkida täpselt nagu kaasinimesega. Siin on täpsem näide: "Andke mulle kõrgetasemeline arhitektuuriülevaade: sisenemispunktid, marsruutimine, autentimine, andmekiht, ehitustööriistad. Seejärel loetlege järjekorras 5 faili, mida lugeda. Käsitlege selgitusi hüpoteesidena ja kinnitage, hüpates viidatud failide juurde."

Saate jätkata järelküsimuste esitamist, näiteks „Kuidas marsruutimine täpsemalt toimib?” või "Rääkige mulle autentimisprotsessist ja -meetoditest" ja see juhatab teid kasulike juhiste juurde, kuidas võõrasse koodibaasi pimedusse valgustada. Katketavate muudatuste proovimine sõltuvuste täiendamisel Npm-pakettide värskendamine, eriti kui need on seotud murranguliste muudatustega, võib olla tüütu ja aeganõudev töö ning sunnib teid siluma parajal hulgal regressioone. Pidin hiljuti uuendama andmete visualiseerimise teeki plotly.js ühe suurema väljalaske versiooni versioonilt 2 versioonilt 3 ja selle tulemusena lakkas mõnel graafikul töötamast telje märgistus. Küsisin siis ChatGPT-lt: "Värskendasin oma Angular projekti, mis kasutab Plotlyt. Värskendasin plotly.js-i – dist paketti versioonilt 2.35.2 versioonilt 3.1.0 - ja nüüd on sildid x- ja y-teljelt kadunud. Mis juhtus?"

Agent tuli lahendusega kiiresti tagasi (vaadake ise allpool). Märkus. Enne paranduse saatmist kontrollisin selgitust siiski ametliku migratsioonijuhendi alusel.

Refaktorite turvaline kopeerimine kõigis failides Kasvavad koodibaasid avavad kindlasti võimalusi koodide konsolideerimiseks. Näiteks märkate koodide dubleerimist failides, mida saab ekstraktida üheks funktsiooniks või komponendiks. Selle tulemusena otsustate luua jagatud komponendi, mille saab selle asemel kaasata, ja teostada selle teguri ühes failis. Nüüd, selle asemel, et neid muudatusi oma ülejäänud failides käsitsi teha, paluge oma agendil refaktor teie eest kasutusele võtta. Agendid võimaldavad teil valida kontekstina mitu faili. Kui ühe faili refaktor on tehtud, saan lisada konteksti nii taasfaktoritud kui ka puutumata failid ja paluda agendil muudatused teistes failides välja tuua järgmiselt: „Korjuta failis A tehtud muudatused ka faili B”. Funktsioonide rakendamine tundmatutes tehnoloogiates Üks mu lemmikhetki AI-kodeerimistööriistade kasutamisel oli see, kui see aitas mul luua GLSL-is üsna keeruka animeeritud gradient-animatsiooni, mis on mulle üsna võõras keel. Hiljutise projekti puhul leidsid meie disainerid 3D-objekti laadimisolekuna animeeritud gradiendi. Mulle meeldis idee väga ja tahtsin pakkuda oma klientidele midagi ainulaadset ja põnevat. Theprobleem: mul oli selle rakendamiseks aega vaid kaks päeva ja GLSL-i õppimiskõver on üsna järsk. Jällegi tuli kasuks tehisintellekti tööriist (antud juhul ChatGPT) ja ma hakkasin üsna lihtsalt paluma tal luua minu jaoks eraldiseisev HTML-fail, mis renderdab lõuendi ja väga lihtsa animeeritud värvigradiendi. Samm-sammult ajendasin AI-d sellele rohkem peenust lisama, kuni jõudsin korraliku tulemuseni, et saaksin hakata varjutajat oma tegelikku koodibaasi integreerima. Lõpptulemus: meie kliendid olid ülimalt rahul ja tänu tehisintellektile pakkusime lühikese ajaga keeruka funktsiooni. Testide kirjutamine Minu kogemuse kohaselt on projektide jaoks harva piisavalt aega, et pidevalt kirjutada ja hooldada korralikku üksuse- ja integratsioonitestide komplekti, ning lisaks sellele ei naudi paljud arendajad tegelikult testide kirjutamist. On täiesti võimalik paluda oma tehisintellekti abilist teie eest teste seadistada ja kirjutada ning seda saab teha lühikese ajaga. Muidugi peaksite arendajana siiski veenduma, et teie testid vaataksid tegelikult teie rakenduse kriitilisi osi ja järgiksid mõistlikke testimispõhimõtteid, kuid testide kirjutamise saate tellida meie AI-abilisele. Näidisviipa: "Kirjutage selle funktsiooni ühikutestid, kasutades Jest. Katketage õnnelik tee, servajuhtumid ja tõrkerežiimid. Selgitage, miks iga test on olemas."

Võite isegi testimisguru Kent C. Doddsi testimise parimaid tavasid oma agendile juhisteks edastada, nagu allpool.

Sisemine tööriist Mõnevõrra sarnaselt varem mainitud varjundi näitega sain hiljuti ülesande analüüsida koodide dubleerimist koodibaasis ning võrrelda enne ja pärast refaktorit. Kindlasti pole see tühine ülesanne, kui te ei soovi failide käsitsi võrdlemiseks aeganõudvat teed. Koostasin Copiloti abiga skripti, mis analüüsis minu jaoks koodi dubleerimist, järjestas ja järjestas väljundi tabelisse ning eksportisin Excelisse. Siis astusin sammu edasi. Kui meie koodireaktor oli tehtud, palusin agentil võtta lähtejooneks minu olemasolev Exceli leht, lisada eraldi veergudesse dubleerimise hetkeseisund ja arvutada delta. Kaua aega tagasi kirjutatud koodi värskendamine Hiljuti tabas mind üks mu vana klient, kuna aja jooksul ei töötanud mõned funktsioonid tema veebisaidil enam korralikult. Konks: veebisait ehitati peaaegu kümme aastat tagasi ning JavaScript ja SCSS kasutasid üsna vanu kompileerimistööriistu, nagu näiteks requestJS, ning seadistamiseks oli vaja Node.js-i vanemat versiooni, mis isegi ei töötaks minu 2025. aasta MacBookis. Kogu ehitusprotsessi käsitsi värskendamine oleks võtnud päevi, mistõttu otsustasin AI-agendilt küsida: "Kas saate värskendada JS-i ja SCSS-i ehitusprotsessi 2025. aasta stackile nagu Vite?" See kindlasti läks ja pärast umbes tunniajalist agendiga viimistlemist lülitasin oma SCSS-i ja JS-i versiooni Vite'ile ning sain keskenduda tegelikule veaparandusele. Lihtsalt veenduge, et valideeriksite väljundi ja kompileeritud failid õigesti, kui teete selliseid lahutamatuid muudatusi oma ehitusprotsessis. Kokkuvõtete tegemine ja joonistamine Kas soovite kõik oma hiljutised koodimuudatused kokku võtta ühe lausega sissekandmisteate jaoks või teil on pikk sissekandmiste loend ja soovite need kokku võtta kolme punktiga? Pole probleemi, laske tehisintellektil selle eest hoolitseda, kuid lugege see kindlasti läbi. Näidisviipa on sama lihtne kui sõnumi saatmine kaasinimesele: „Palun võtke kokku minu hiljutised muudatused lühidalt täppides”. Soovitan siinkohal kasutada GPT-d kirjutamiseks ettevaatlikult ja nagu koodi puhul, kontrollige enne saatmist või esitamist väljundit. Soovitused ja parimad tavad Suhtlemine Üks AI kasutamise mitte nii ilmselgetest eelistest on see, et mida täpsemad ja kohandatud on teie viiped, seda parem on väljund. AI-agendi küsimise protsess sunnib meid enne kirjutamist ja kodeerimist oma nõuded võimalikult täpselt sõnastama. Seetõttu soovitan reeglina tungivalt olla oma õhutusel võimalikult konkreetne. Remixi kaasautor Ryan Florence soovitab lihtsat, kuid võimsat viisi selle protsessi parandamiseks, lõpetades oma esialgse viipa lausega: "Enne kui alustame, kas teil on mulle küsimusi?"

Sel hetkel esitab tehisintellekt tavaliselt abistavate küsimustega, kus saate oma konkreetseid kavatsusi selgitada, juhendades agenti, et pakkuda teile teie ülesande jaoks paremini kohandatud lähenemisviisi.

Kasutage versioonikontrolli ja töötage seeditavate tükkidena Versioonihalduse, nagu git, kasutamine pole kasulik mitte ainult siis, kui teete meeskonnana koostööd ühel koodibaasil, vaid ka selleks, et pakkuda teileindividuaalne panustaja, kellel on stabiilsed punktid, kelle juurde hädaolukorras tagasi pöörduda. Oma mittedeterministliku olemuse tõttu võib tehisintellekt mõnikord minna petturlikuks ja teha muudatusi, mis lihtsalt ei aita seda, mida te üritate saavutada, ning lõpuks rikkuda asjad parandamatult. Töö jagamine mitmeks kohustuseks aitab teil luua stabiilseid punkte, mille juurde saate naasta juhuks, kui asjad lähevad kõrvale. Ja ka teie meeskonnakaaslased tänavad teid, sest neil on teie koodi lihtsam üle vaadata, kui see on semantiliselt hästi struktureeritud tükkideks jagatud. Vaadake põhjalikult üle See on pigem üldine hea tava, kuid minu arvates muutub see arendustöös tehisintellekti tööriistu kasutades veelgi olulisemaks: olge oma koodi esimene kriitiline ülevaataja. Võtke kindlasti aega, et oma muudatused rida-realt üle vaadata, täpselt nagu vaataksite üle kellegi teise koodi, ja esitage oma töö alles siis, kui see läbib teie enesekontrolli. "Praegu on minu jaoks tõesed kaks asja: AI agendid on hämmastavad ja suurendavad tohutult tootlikkust. Nad on ka tohutud masinad, kui lülitate oma aju välja ja lasete täielikult lahti." - Armin Ronacher oma ajaveebipostituses Agent Psychosis: Are We Going Insane?

Järeldus ja kriitilised mõtted Minu arvates võivad tehisintellekti kodeerimise tööriistad tõsta meie kui arendajate tootlikkust igapäevaselt ning vabastada vaimset võimekust rohkem planeerimiseks ja kõrgemal tasemel mõtlemiseks. Need sunnivad meid soovitud tulemust üksikasjalikult sõnastama. Iga AI võib mõnikord hallutsineerida, mis tähendab põhimõtteliselt, et see on enesekindlal toonil. Seega kontrollige ja testige kindlasti, eriti kui kahtlete. AI ei ole hõbekuul ja ma usun, et tipptasemel ja arendaja probleemide lahendamise oskus ei lähe kunagi moest välja. Arendajate jaoks, kes alles alustavad oma karjääri, võivad need tööriistad olla väga ahvatlevad teha suurem osa tööst nende eest. Siin võib kaduma minna sageli kurnav ja valus töö vigade ja probleemidega, mida on keeruline siluda ja lahendada, nn "lihvimine". Isegi Cursor AI enda Lee Robinson seab selle ühes oma postituses kahtluse alla:

AI kodeerimistööriistad arenevad kiires tempos ja ma ootan põnevusega, mis järgmiseks tuleb. Loodan, et leidsite sellest artiklist ja selle näpunäidetest abi ning olete põnevil, et proovite mõnda neist ka ise.

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