O que é o Go?

Concluído

Go é uma linguagem de programação desenvolvida no Google. Foi anunciado em 2009 como um projeto open-source por Robert Griesemer, Rob Pike e Ken Thompson. Desde então, o Go é usado para desenvolver outras tecnologias conhecidas, como Docker, Kubernetes e Terraform. Embora o Go seja muito usado no lado do servidor e no software de nuvem, é uma linguagem de uso geral com vários casos de uso diferentes.

O Go é expressivo, conciso e limpo. Ele foi projetado para ser idiomático, o que permite que os programadores escrevam um código eficiente e robusto. Programas escritos em Go podem ser executados em sistemas UNIX, como Linux e macOS, assim como no Windows. O Go é notável em parte devido a seus mecanismos de simultaneidade exclusivos, que facilitam a escrita de programas que aproveitam vários núcleos ao mesmo tempo. Go é uma linguagem fortemente e estaticamente tipada, o que significa que os tipos de variáveis são conhecidos no tempo de compilação. No entanto, ela tem alguns recursos dinamicamente tipados.

De acordo com o índice TIOBE, o Go era a linguagem de programação do ano em 2009 e 2016. Embora tenha atingido o ápice em 2016, o Go mantém uma classificação alta. De acordo com a pesquisa anual para desenvolvedores do Stack Overflow, o Go continua sendo uma das linguagens mais usadas.

O Go tem muitas semelhanças com o C e herda vários aspectos da sintaxe, das instruções de fluxo de controle, dos tipos de dados básicos, dos ponteiros e de outros elementos do C. No entanto, a sintaxe e a semântica da linguagem vão além do C, porque também tem semelhanças com Java, C#, Python e muito mais. Em geral, o Go tende a usar e adaptar recursos de outras linguagens de programação, mas elimina a maior parte da complexidade. Por exemplo, você pode usar alguns recursos de programação OO (orientada a objeto) e padrões de design no Go, mas o paradigma de OO completo não é totalmente implementado. Você aprenderá o porquê mais adiante neste roteiro de aprendizagem.

Princípios do Go

Estes são os benefícios dos princípios subjacentes da linguagem de programação Go:

  • A licença do Go é totalmente de software livre.
  • Os programas do Go são compilados em um binário autossuficiente, facilitando o compartilhamento e a distribuição.
  • Go da suporte à compilação cruzada em uma variedade de plataformas e sistemas operacionais.
  • O Go busca manter a linguagem pequena e simples e fazer mais com menos linhas de código.
  • A simultaneidade é importante e permite que qualquer função seja executada como um thread leve com pouco esforço do programador.
  • O Go oferece gerenciamento automático de memória, incluindo coleta de lixo.
  • Compilação e execução são rápidas.
  • O Go requer que todo o código seja usado, caso contrário, um erro é gerado.
  • Há uma formatação oficial que ajuda a manter a consistência entre projetos.
  • O Go tem uma biblioteca padrão grande e abrangente, e muitos aplicativos podem ser construídos sem dependências de terceiros.
  • O Go garante a compatibilidade com versões anteriores da linguagem.

Casos de uso do Go

  • Aplicativos de nível de sistemas
  • Aplicativos Web
  • Aplicativos nativos de nuvem
  • Utilitários e ferramentas de linha de comando
  • Sistemas distribuídos
  • Implementações de banco de dados