Grow with AppMaster Grow with AppMaster.
Become our partner arrow ico

Rilasciato Go 1.19: Generici migliorati, raffinamenti e un nuovo modello di memoria

Rilasciato Go 1.19: Generici migliorati, raffinamenti e un nuovo modello di memoria

Il linguaggio di programmazione Go (Golang) di Google ha rilasciato la sua ultima versione, Go 1.19, che migliora il supporto dei generici, introduce un modello di memoria migliorato e offre una serie di altre funzionalità. Questo aggiornamento si concentra sul perfezionamento dei generici recentemente aggiunti, introdotti per la prima volta in Go 1.18, e sull'ottimizzazione delle prestazioni del codice generico fino al 20%.

Miglioramenti in Go 1.19

Con il rilascio di Go 1.19 il 2 agosto, lo sviluppo del supporto per i generici si concentra sulla risoluzione di problemi sottili e di casi particolari segnalati dalla comunità, oltre che sul miglioramento delle prestazioni. L'introduzione dei generici nel linguaggio era una caratteristica a lungo attesa, aggiunta a Go 1.18, rilasciato a marzo.

Il modello di memoria di Go è stato aggiornato per definire esplicitamente il comportamento del pacchetto sync/atomic, che fornisce primitive di memoria atomica di basso livello per implementare algoritmi di sincronizzazione. La definizione formale della relazione happens-before è stata rinnovata per allinearsi ai modelli di memoria utilizzati da C, C++, Java, JavaScript, Rust e Swift. Questo aggiornamento non ha alcun impatto sui programmi esistenti.

Come parte dell'aggiornamento del modello di memoria, sono stati introdotti nuovi tipi nel pacchetto sync/atomic, tra cui atomic.int64 e atomic.Pointer(T), che rendono più comodo l'uso di valori atomici. Go 1.19 è ora disponibile per il download da go.dev per Windows, macOS e Linux.

Caratteristiche aggiuntive di Go 1.19

Oltre ai miglioramenti ai generici e al nuovo modello di memoria, Go 1.19 ha introdotto altre caratteristiche:

  • Un limite di memoria morbido aggiunto al garbage collector, che aiuta a ottimizzare i programmi Go in esecuzione in contenitori con allocazioni di memoria dedicate.
  • Miglioramenti delle prestazioni e dell'implementazione, come il dimensionamento dinamico degli stack delle coroutine per ridurre la copia dello stack, l'uso automatico di descrittori di file aggiuntivi sulla maggior parte dei sistemi Unix, le tabelle di salto per le istruzioni switch di grandi dimensioni su x86-64 e ARM64 e il supporto per le chiamate di funzione iniettate dal debugger su ARM64.
  • È stata apportata una piccola correzione ai parametri di tipo nelle dichiarazioni dei metodi, senza influire sui programmi esistenti.
  • I commenti al documento supportano ora collegamenti, elenchi e sintassi di intestazione, rendendo più chiara la composizione dei commenti al documento, specialmente per i pacchetti con API estese.
  • Per motivi di sicurezza, il pacchetto os/exec non consente più percorsi relativi nella ricerca del PATH.
  • È stato introdotto un nuovo vincolo di compilazione, unix, che viene soddisfatto quando il sistema operativo target opera su un qualsiasi sistema Unix-like.

Con l'aumento dell'adozione di no-code e low-code piattaforme come AppMaster è essenziale per gli sviluppatori rimanere aggiornati con gli ultimi progressi dei linguaggi di programmazione più diffusi, come Go. L'integrazione di Go con AppMaster può accelerare lo sviluppo delle applicazioni di backend, offrendo una maggiore scalabilità ed economicità. Go 1.19 apporta miglioramenti sostanziali per incrementare le prestazioni, la sicurezza e l'esperienza degli sviluppatori, rafforzando la sua posizione di strumento vitale per lo sviluppo del software moderno.

Post correlati

AppMaster a BubbleCon 2024: esplorazione delle tendenze senza codice
AppMaster a BubbleCon 2024: esplorazione delle tendenze senza codice
AppMaster ha partecipato al BubbleCon 2024 di New York, acquisendo informazioni, ampliando le reti ed esplorando opportunità per guidare l'innovazione nello spazio di sviluppo no-code.
Riepilogo FFDC 2024: approfondimenti chiave dalla FlutterFlow Developers Conference di New York
Riepilogo FFDC 2024: approfondimenti chiave dalla FlutterFlow Developers Conference di New York
FFDC 2024 ha illuminato New York City, offrendo agli sviluppatori approfondimenti all'avanguardia sullo sviluppo di app con FlutterFlow. Con sessioni condotte da esperti, aggiornamenti esclusivi e networking senza pari, è stato un evento da non perdere!
Licenziamenti tecnologici del 2024: l'ondata continua che colpisce l'innovazione
Licenziamenti tecnologici del 2024: l'ondata continua che colpisce l'innovazione
Con 60.000 posti di lavoro tagliati in 254 aziende, tra cui giganti come Tesla e Amazon, il 2024 vedrà una continua ondata di licenziamenti nel settore tecnologico che rimodellerà il panorama dell'innovazione.
Inizia gratis
Ispirato a provarlo tu stesso?

Il modo migliore per comprendere il potere di AppMaster è vederlo di persona. Crea la tua applicazione in pochi minuti con l'abbonamento gratuito

Dai vita alle tue idee