Také vývoj softwaru prochází změnami, a to nejen v souvislosti s umělou inteligencí. Zajímavé posuny se týkají programovacích jazyků. Dále má nastat odvrat od mikroslužeb a přízeň opět získají monolitické architektury.
Po nějaké době opět vyjdeme z komentáře, který napsal Christopher Tozzi pro ITPro Today.
V oblasti programovacích jazyků zmiňuje prudce rostoucí popularitu jazyka Rust. Pokračovat bude ústup řady dříve rozšířených technologií, např. PHP. Pozice vyklízí i Java, i když relativně pomalu. Podle indexu Tiobe (což je metrika založená na dotazech ve vyhledávačích, tedy samozřejmě s omezenou platností) si pozici nejrozšířenějšího jazyka bez problémů udržuje Python (Javu předstihl poprvé v roce 2021). Spolu s Javou klesá i popularita C#. Rust, ač ho Ch. Tozzi vyzdvihuje, se za rok posunul z 19. místa na 14., tedy k úplné špičce má ještě celkem daleko. (Naopak loňský průzkum Stack Overflow přímo provedený mezi vývojáři praví: JavaScript, Python a SQL jsou velmi žádané a obdivované programovací jazyky, ale nejobdivovanějším programovacím jazykem je letos právě Rust s 83 %. A více respondentů používalo JavaScript než Python.)
Také po vývojářích se značně požadovat udržitelnost („příspěvek k ekologické politice firmy“), která se až dosud soustředila na hardware a energetickou úspornost v datových centrech. Nicméně způsob, jakým vývojáři navrhují, implementují a nasazují aplikace, může mít také vliv na to, kolik energie aplikace spotřebují.
Zaměření na bezpečnostní rizika dodavatelského řetězce softwaru (tj. rizika, která mají původ v softwaru třetích stran, nikoli v kódu, který si podnik napíše sám) samo o sobě není žádnou novinou, v posledních několika letech se však objevily nové typy výzev v této oblasti, a to zejména v důsledku zavádění umělé inteligence. Jedním z příkladů je halucinace balíčků (package hallucination), kdy model umělé inteligence generuje kód obsahující fiktivní softwarové závislosti. Pokud útočníci vytvoří škodlivé závislosti se stejnými názvy jako ty fiktivní, existuje riziko, že škodlivý kód pronikne do dodavatelských řetězců. Vývojáři budou muset tato rizika při své práci stále více zohledňovat.
Za pozornost ještě stojí, že při vývoji softwaru byly a jsou v módě mikroslužby – tedy softwarová architektura, která rozděluje aplikace na samostatné služby. Mikroslužby však podle CH. Tozziho mají jasné nevýhody, například zvýšenou složitost. V brzké době můžeme tedy očekávat návrat zájmu o monolitické infrastruktury; i když mikroslužby samozřejmě pro některé případy použití přetrvají.
A nakonec, programování s podporou umělé inteligence je dnes běžné, tím to ale končí. AI přestává být transformační technologií pro vývoj softwaru. Využívání nástrojů AI k tvorbě kódu není dokladem žádné „špičkovosti“, u jednotlivce ani podnikových vývojových týmů.
Zdroj: ITProToday a další