O que é o idioma Go?
O Go (também conhecido como Golang) é uma linguagem de programação desenvolvida pelo Google que é tipicamente fortemente tipada, compilada, simultânea e possui coleta de lixo.
História:
Robert Griesemer, Rob Pike e Ken Thompson começaram a desenhar o Go em setembro de 2007, e mais tarde Ian Lance Taylor e Russ Cox entraram no projeto. O Go é baseado no sistema operacional Inferno. O Go foi anunciado oficialmente em novembro de 2009 como um projeto de código aberto e foi implementado nas plataformas Linux e Mac OS X e posteriormente adicionado ao sistema Windows. Em 2016, o Go foi selecionado como "Melhor idioma do TIOBE 2016" pela empresa de avaliação de software TIOBE. Atualmente, o Go lança uma versão secundária a cada seis meses (ou seja, atualizações de machado para ay).
Linguagem compilada
Atualmente, as linguagens de programação no mercado estão divididas em: linguagens compiladas e linguagens interpretadas.
Linguagem interpretativa comum:
-
Pitão
-
PHP
-
Java
Linguagem compilada:
-
golang
-
C ++
-
C
Linguagem C no século XXI
Comparação do tempo de desenvolvimento de linguagens de programação famosas
O primeiro processador dual-core foi lançado em 2005 e a linguagem Go foi criada nos próximos dois anos. Ela tem algumas vantagens em processadores multinúcleo e processamento simultâneo inato. O idioma Go oferece suporte à simultaneidade nativa quando é projetado, portanto, salva a experiência do desenvolvedor e facilita a introdução.
Descrição:
A sintaxe de Go é próxima de C, mas a declaração de variáveis é diferente. Go suporta coleta de lixo. O modelo paralelo de Go é baseado no processo sequencial de comunicação (CSP) de Tony Hall. Outros idiomas que adotam modelos semelhantes incluem Occam e Limbo, mas também possui características de operação Pi, como transmissão de canal. O suporte ao plug-in (plug-in) foi aberto na versão 1.8, o que significa que agora algumas funções podem ser carregadas dinamicamente a partir do Go.
Comparado com o C ++, o Go não inclui funções como enumeração, manipulação de exceções, herança, genéricos, asserções, funções virtuais, mas adiciona recursos como tipo de fatia, simultaneidade, pipelines, coleta de lixo e interface. Suporte no nível do idioma. A versão Go 2.0 oferece suporte a genéricos e mantém uma atitude negativa em relação à existência de asserções, além de se defender contra o fornecimento de herança de tipo.
Ao contrário do Java, o Go incorporou matrizes associativas (também conhecidas como hashes ou dicionários), assim como os tipos de string.
Existem várias regras no Go e são obrigatórias.A compilação produzirá erros quando as seguintes regras não forem correspondentes.
-
Não há necessidade de escrever um ponto-e-vírgula (;) após cada linha de procedimento.
-
As chaves ({) não podem ser colocadas em uma nova linha.
-
Se os julgamentos e os loops não precisarem ser colocados entre parênteses.
-
O Go também possui uma ferramenta gofmt integrada, que pode separar automaticamente espaços extras no código, alinhar nomes de variáveis e converter espaços alinhados em guias.
Compilador
Atualmente, existem duas ramificações do compilador Go, os compiladores oficiais gc e gccgo. O compilador oficial foi originalmente escrito em C e posteriormente reescrito em Go para obter o bootstrap. Gccgo é um compilador Go que usa o GCC padrão como back-end.
O compilador oficial suporta compilação de plataforma cruzada (mas não suporta CGO), permitindo que o código-fonte seja compilado em arquivos binários que podem ser executados no sistema e na arquitetura de destino.
Endereço original de referência: https://studygolang.com/articles/20032