Re:Invent konferencijoje AWS šiandien paskelbė apie Q Developer, savo kodavimo pagalbinės platformos, kuri konkuruoja su tokiais kaip GitHub Copilot, atnaujinimų seriją. Čia pagrindinis dėmesys skiriamas ne tik kodo užbaigimui, bet ir pagalbai kūrėjams atlikti platesnį įprastų užduočių spektrą, apimantį visą programinės įrangos gyvavimo ciklą.
Paslauga, kurią vis dar galite prisiminti ankstesniu pavadinimu „CodeWhisperer“, yra AWS bendros „Amazon Q“ generuojančios AI platformos dalis, kuri taip pat apima „Q Business“ (ir kuri šiandien taip pat gauna daugybę atnaujinimų).
„Kūrėjams reikia, kad jie iš tikrųjų norėtų, kad Q būtų bičiulis, kuris išspręstų kai kuriuos nediferencijuojamus sunkius kėlimus, kad jie iš tikrųjų turėtų daugiau laisvės diegti naujoves“, – man pasakė Swaminathan „Swami“ Sivasubramanian, AWS AI ir duomenų viceprezidentas. . „Todėl toks svarbus dalykas yra turėti padėjėją arba bičiulį, kuris padėtų jiems atlikti darbus greičiau ir sklandžiau, todėl mes tam daug dėmesio skiriame.
Programinės įrangos gyvavimo ciklo valdymas
Sivasubramanianas man pasakė, kad jis mano, kad „Q Developer“ skiriasi nuo konkuruojančių platformų, nes jos dėmesys sutelkiamas į visą programinės įrangos kūrimo ciklą. Iki šiol tai reiškė padėti kūrėjams šalinti problemas ir atlikti kelių etapų užduotis jas išspręsti (arba sukurti visiškai naujas programas), taip pat nuskaityti kodą, ar nėra saugos spragų.
Šiuo re:Invent įmonė žengia žingsnį toliau. Pavyzdžiui, Q dabar gali automatiškai generuoti vienetų testus. Tačiau galbūt dar svarbiau yra tai, kad dabar jis gali atlikti ir tą, kurio daugelis kūrėjų labiausiai nekenčia: rašyti ir prižiūrėti to kodo dokumentus. Kad užbaigtų šį ciklą, Q dabar gali sugeneruoti pirmąją kodo peržiūrą, kai kūrėjai patikrina savo kodą.
„Amazon“ taiko šią taisyklę, kad joks kodas niekada nėra registruojamas be kodo peržiūros“, – sakė Sivasubramanianas. „Taigi, jei neatliksite kodo peržiūros, negalėsite užsiregistruoti. Tačiau iš tikrųjų nedaugelis įmonių turi pakankamai vyresniųjų inžinierių, kad galėtų peržiūrėti, arba vyresnysis inžinierius sako: „Aš negaliu susidoroti su tiek daug apžvalgų. Ar gali kas nors jį peržiūrėti prieš tai? Q Mes supaprastinsime kodo peržiūros procesą, būdami pirmieji tikrintojai ir pasirūpinsime automatiniu kodo kokybės, saugumo spragų ir kt.
Tada, kai kodas bus gaminamas, naujas Q operacijų agentas dabar gali automatiškai gauti duomenis iš AWS CloudWatch, bendrovės stebėjimo tarnybos, ir nedelsiant pradėti tirti, kai suveikia pavojaus signalas. „Jis naudoja (turi turimas žinias apie) organizacijos AWS išteklius, o tada perima šimtus duomenų taškų įvairiuose „CloudWatch“ šaltiniuose. Tada, išanalizavęs, Q pateikia galimą pagrindinės priežasties hipotezę, o tada naudotojams nurodo, kaip ją išspręsti“, – paaiškino Sivasubramanianas.
Viskas, ko norėjote per Kalėdas, buvo padėti perkeliant Cobol ir .NET, tiesa?
Įmonėms, turinčioms senesnes kodų bazes, pereinant prie debesies dažnai reikia perrašyti daug esamo kodo. Viena iš pirmųjų „Amazon Q Developer“ ypatybių buvo jos agentas, skirtas kodo transformavimui. Tuo metu šis agentas daugiausia dėmesio skyrė senesnių „Java“ programų modifikavimui. Šiandien komanda tai plečia, padėdama kūrėjams atnaujinti senesnes .NET pagrįstas programas iš Windows į Linux.
Ir nors iš pradžių tai gali atrodyti kaip smalsumas, AWS taip pat pristato agentą, skirtą COBOL pagrindinio kompiuterio programoms modernizuoti. Galų gale, daugelis didelių įmonių vis dar remiasi šiuo senu kodu, kurį šiandien žino tik nedaugelis kūrėjų. Tai labai sudėtingos migracijos, pabrėžė Sivasubramanianas, todėl tikslas nėra tiesiog išversti esamą kodą santykiu 1:1.
„Mūsų tikslas nėra tiesiog visiškai įvesti COBOL projektą, užkoduoti“, – sakė jis. „Realybė tokia, kad šie projektai iš esmės yra labai sudėtingi. Turite turėti žmogų, kad galėtumėte tai panaudoti, bet girdėjau klientų sakant: „Ei, tai užtrunka kelerius metus, o klientai mums aiškiai pasakė, kad tai yra žaidimo keitiklis ir žymiai sumažintų tą laiką“.
Sivasubramanianas pažymėjo, kad nors yra mažiau COBOL kodo, skirto modeliams išmokyti automatizuoti kodo perkėlimą, komanda galėjo panaudoti bendrą AWS patirtį modernizuojant pagrindinio kompiuterio programas, taip pat tradicinius kodo vertimo metodus.
„Kodo perkėlimas iš vienos kalbos į kitą, be abejo, yra lengva dalis“, – sakė jis. „Tačiau sunkesnė dalis yra: kaip žinoti, kad viską padarei teisingai? Ir iš kur tu žinai, ką daro kodas? Ir tada iššūkis šiose (kodų bazėse) yra tas, kad jos paprastai yra prastai dokumentuotos, o priklausomybės nėra gerai suprantamos. Taigi tai, ką sukūrėme, yra tikrai labai novatoriška, ir (sistema) projekto lygmeniu taip pat supranta, kokie yra kiekvieno modulio tikslai, ir tada planuoja ir sukuria perėjimo planavimo laiko juostą, kad iš tikrųjų sugeneruotų kodą. tada sugeneruokite testą ir įtraukite žmones į kilpą, kad pamatytumėte, kaip jį patvirtinate.


