Timeline
Chat
Prospettiva
Go (linguaggio di programmazione)
linguaggio di programmazione Da Wikipedia, l'enciclopedia libera
Remove ads
Go è un linguaggio di programmazione ad alto livello compilato e tipizzato staticamente, progettato da Robert Griesemer, Rob Pike e Ken Thompson presso Google.[1]
Remove ads
Sintatticamente simile al C, dispone anche di sicurezza di memoria, garbage collection, tipizzazione strutturale e concorrenza in stile CSP. Spesso ci si riferisce a lui come a Golang a causa del suo precedente nome di dominio, golang.org
, ma il suo nome corretto è Go.
Esistono due implementazioni principali:
- La toolchain del compilatore "gc" di Google, self-hosting, destinata a più sistemi operativi e WebAssembly.
- gofrontend, un frontend per altri compilatori, con la libreria libgo. Con GCC la combinazione è gccgo; con LLVM la combinazione è gollvm.
Un compilatore in sorgente di terze parti, GopherJS, compila Go in JavaScript per lo sviluppo web front-end.
Remove ads
Storia
Riepilogo
Prospettiva
Go è stato progettato da Google nel 2007 per migliorare la produttività nella programmazione in un'era di macchine multicore, connesse in rete e con ampie basi di codice. I progettisti volevano affrontare le critiche rivolte ad altri linguaggi in uso a Google, mantenendo però le loro caratteristiche utili:
- Tipizzazione statica ed efficienza in fase di esecuzione (come il C)
- Leggibilità e usabilità (come Python)
- Reti ad alte prestazioni e multiprocessing
I progettisti erano principalmente motivati dalla loro comune avversione per il C++.
Go è stato annunciato pubblicamente nel novembre 2009 e la versione 1.0 è stata rilasciata nel marzo 2012. Go è ampiamente utilizzato in produzione presso Google e in molte altre organizzazioni e progetti open-source.
Marchio e stile

La mascotte Gopher è stata introdotta nel 2009 per il lancio open-source del linguaggio. Il design, realizzato da Renée French, è stato ispirato da una promozione del WFMU risalente al 2000.
Nel novembre 2016, i caratteri tipografici Go e Go Mono sono stati rilasciati dai designer Charles Bigelow e Kris Holmes, appositamente per il progetto Go. Go è un carattere senza grazie umanista simile al Lucida Grande, mentre Go Mono è a larghezza fissa. Entrambi i font aderiscono al set di caratteri WGL4 e sono stati progettati per essere leggibili, con una grande altezza-x e forme delle lettere distintive. Sia Go che Go Mono rispettano lo standard DIN 1450, includendo uno zero barrato, una l
minuscola con una coda e una I
maiuscola con serif.
Nell'aprile 2018, il logo originale è stato ridisegnato dal designer di marchi Adam Smith. Il nuovo logo è un moderno e stilizzato "GO" inclinato verso destra con linee aerodinamiche che lo seguono. La mascotte del Gopher è rimasta la stessa.
Remove ads
Caratteristiche principali
Go soddisfa le esigenze della programmazione concorrente ed è stato progettato per ottimizzare i tempi di compilazione anche per hardware modesti. La sintassi è vicina al C eccetto per la dichiarazione dei tipi e per la mancanza di parentesi tonde nei costrutti for e if. Ha un sistema di garbage collection che si occupa autonomamente della gestione della memoria. Non include l'intercettazione di eccezioni, l'eredità dei tipi, le asserzioni e l'overloading dei metodi.
Remove ads
Esempio
Hello World in Go:
package main
import "fmt"
func main() {
fmt.Printf("Hello, World")
}
Note
Altri progetti
Collegamenti esterni
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads