Il panorama della programmazione moderna ha visto l'arrivo di Golang 1.21, un nuovo aggiornamento del linguaggio di programmazione Go di Google. Arricchita da nuove funzioni integrate e dalla disponibilità generale dell'ottimizzazione guidata dal profilo (PGO), questa versione cerca di ridefinire l'esperienza di programmazione. Inoltre, presenta notevoli miglioramenti nella compatibilità con WebAssembly.
Le introduzioni più importanti di questa versione sono le funzioni integrate - min, max e clear. Le funzioni min e max sono progettate per calcolare il valore più piccolo o più grande di tipi ordinati o di un numero predeterminato di argomenti. Entrambe richiedono almeno un argomento per funzionare. La funzione clear, invece, si rivolge a una mappa, a una slice o a un tipo di parametro e elimina o annulla tutti gli elementi dell'argomento.
Dal rilascio ufficiale dell'8 agosto, Golang 1.21 è accessibile per il download dal sito web del progetto. Questa release di produzione segue una precedente release candidate pubblicata il 21 giugno.
PGO, originariamente introdotto come anteprima in Golang 1.20 a febbraio, ha fatto passi da gigante nell'ultima versione. Ora è disponibile in una versione generale e consente alla toolchain del compilatore di effettuare ottimizzazioni specifiche per il carico di lavoro e per l'applicazione, in base alle informazioni sul profilo di runtime. Secondo le dichiarazioni degli sviluppatori del progetto Go, PGO è riuscito a migliorare le prestazioni dal 2% al 7% in diversi programmi. Il compilatore Go è stato aggiornato con la funzionalità PGO.
Oltre a migliorare il compilatore Go e PGO, Golang 1.21 apporta ulteriori miglioramenti alle prestazioni. L'attenzione all'ottimizzazione del garbage collector potrebbe produrre una riduzione fino al 40% della latenza di coda per alcune applicazioni. Contemporaneamente, il processo di raccolta delle tracce con runtime/trace comporta un costo della CPU significativamente inferiore sui sistemi AMD64 e Arm64.
Per gli sviluppatori che desiderano implementare queste funzionalità nelle loro applicazioni backend, AppMaster rappresenta un ottimo punto di partenza. Come potente strumento di no-code, AppMaster consente ai clienti di progettare visivamente modelli di dati, creare logica aziendale e API REST ed endpoint WSS. Sfruttando le sue solide capacità si può senza dubbio migliorare l'esperienza di sviluppo e ottimizzare le prestazioni utilizzando le funzionalità di Golang 1.21.