O que é Go?

Concluído

Go é uma linguagem de programação que foi desenvolvida no Google. Foi anunciado em 2009 como um projeto de código aberto por Robert Griesemer, Rob Pike e Ken Thompson. Desde então, o Go tem sido usado para desenvolver outras tecnologias bem conhecidas, como Docker, Kubernetes e Terraform. Embora o Go seja muito usado em software do lado do servidor e na nuvem, é uma linguagem de uso geral com uma abundância de casos de uso diferentes.

Go é expressivo, conciso e limpo. Ele foi projetado para ser idiomática, o que permite que os programadores escrevam código de forma produtiva que seja eficiente e robusto. Programas escritos em Go podem ser executados em sistemas Unix, como Linux e macOS, e no Windows. Go é notável em parte por causa de seus mecanismos exclusivos de simultaneidade, facilitando a escrita de programas que podem tirar proveito de vários núcleos ao mesmo tempo. É principalmente uma linguagem fortemente e estaticamente tipada, o que significa que os tipos de variáveis são conhecidos em tempo de compilação. Ele tem, no entanto, alguns recursos digitados dinamicamente.

De acordo com o índice TIOBE, Go foi a linguagem de programação do ano em 2009 e 2016. Embora tenha atingido seu ápice em 2016, Go mantém uma classificação alta. De acordo com o Stack Overflow Developer Survey anual, Go continua como uma linguagem muito amada.

Go tem muitas semelhanças com C e herda aspetos da sintaxe C, como instruções de fluxo de controle, tipos de dados básicos, ponteiros e outros elementos. No entanto, tanto a sintaxe quanto a semântica da linguagem vão além do C. Ele também traça semelhanças com Java, C#, Python e muito mais. Em geral, o Go tende a pegar emprestado e adaptar recursos de outras linguagens de programação, enquanto elimina a maior parte da complexidade. Por exemplo, você pode usar alguns recursos de programação orientada a objetos (OO) e padrões de design em Go, mas o paradigma OO completo não está totalmente implementado. Você aprenderá o porquê mais adiante neste caminho de aprendizagem.

Princípios Go

Aqui estão os principais benefícios subjacentes da linguagem de programação Go:

  • A licença Go é 100% open source.
  • Os programas Go compilam para um único binário independente, facilitando o compartilhamento e a distribuição.
  • O Go suporta compilação cruzada para uma variedade de plataformas e sistemas operacionais.
  • Go se esforça para manter a linguagem pequena e simples, e para fazer mais em menos linhas de código.
  • A simultaneidade é um cidadão de primeira classe e permite que qualquer função seja executada como um thread leve com pouco esforço do programador.
  • O Go fornece gerenciamento automático de memória, incluindo coleta de lixo.
  • A compilação e a execução são rápidas.
  • Go requer que todo o código seja usado, ou então um erro é lançado.
  • Há formatação oficial que ajuda a manter a consistência entre os projetos.
  • O Go tem uma biblioteca padrão grande e abrangente, e muitos aplicativos podem ser criados sem dependências de terceiros.
  • Go garante a retrocompatibilidade do idioma com versões anteriores.

Casos de uso Go

  • Aplicações ao nível dos sistemas
  • Aplicações Web
  • Aplicações nativas na cloud
  • Utilitários e ferramentas de linha de comando
  • Sistemas distribuídos
  • Implementações de banco de dados