Esse desenvolvedor foi TJ Holowaychuk. Ele foi o autor de muitos dos pacotes npm mais usados ​​e contribuiu para as principais bibliotecas JavaScript.

Mas ele era realmente uma pessoa real. E um dia em 2014, ele decidiu deixe a comunidade Node para se concentrar em Go.

Muitas pessoas sentaram-se em suas cadeiras. Ir?

Sim. Ir.

A linguagem alcançou o nível de promessa de que mesmo alguns dos desenvolvedores mais influentes estavam se aproximando dela.

A comunidade Go abraçou TJ de braços abertos.

Então, por que esse desenvolvedor prefere a relativa simplicidade e sintaxe direta do Go em relação a idiomas alternativos de back-end?

Para pessoas como eu que são autodidatas, o Go ofereceu uma grande oportunidade de mergulhar em diferentes áreas da ciência da computação e engenharia de sistemas.

O Go é semelhante ao C, mas com segurança de memória e um tempo de execução para simultaneidade interna. E, nesse sentido, é muito "mais próximo do metal", por assim dizer, quando se trata de interagir com os primitivos gerais que subjazem aos sistemas operacionais.

Agora, construo principalmente sistemas distribuídos. Antes de aprender, o Go minha formação era - como TJ - principalmente em Node e JavaScript. O nó faz muitas coisas bem, mas não a simultaneidade. E o Node não é mais a ferramenta de escolha para quem trabalha em sistemas distribuídos. Em vez disso, o Go se tornou o idioma de referência.

Ir como idioma

Go é uma linguagem compilada estaticamente famosa por sua sintaxe simples e direta. Ele aborda as armadilhas comuns do C, mantendo seu desempenho e interoperabilidade.

Apesar dessa simplicidade, o Go foi projetado para lidar com a simultaneidade. E sofre com a complexidade que isso implica.

Go também é bastante idiomático, o que torna as melhores práticas um pouco esquivas.

Um dos recursos mais atraentes do Go é a facilidade de começar. Os alunos geralmente lutam para escolher recursos dentre os milhares disponíveis.

Com isso em mente, aqui estão algumas sugestões opinativas sobre por onde começar.

Go

O Essential Go fornece uma visão abrangente do idioma. É um excelente recurso para iniciantes e intermediários.

Ele cobre as estruturas de dados fundamentais da linguagem em profundidade.

Também explica a simultaneidade e as Goroutines, fornecendo informações sobre as melhores práticas idiomáticas.

O livro Little Go

Gratuito para download, The Little Go Book é uma introdução à linguagem de programação Go do Google

title

Outra boa opção para quem quer começar rapidamente.

O livro Little Go aborda o básico. Pode estar desatualizado, mas os fundamentos abordados não foram alterados.

O abrangente mergulho de 7 horas do freeCodeCamp no Go. Melhor abordado em blocos, este é um excelente recurso para iniciantes.

O conteúdo do curso também o torna útil para programadores intermediários do Go que desejam recapitular tópicos diferentes.

quii / aprenda-o-com-testes

Learn Go com desenvolvimento orientado a testes. Contribua para o desenvolvimento quii / learn-go-with-tests criando uma conta no GitHub.

631756?s=400&v=4

A melhor maneira de começar é começar a escrever código.

Learn Go With Tests é uma ótima introdução para aprender os meandros do idioma.

A linguagem de programação Go

Go é uma linguagem de programação de código aberto que facilita a criação de software simples, confiável e eficiente.

Imagem post

Essa é a fonte de fato de informações sobre novos recursos e melhores práticas no Go.

Este blog possui um excelente conjunto de recursos para desenvolvedores.

Novos recursos, práticas recomendadas e padrões de Go são todos descritos em detalhes aqui.

Recomendar documentação: GoDoc

https://godoc.org/

O GoDoc é o recurso mais usado pelos desenvolvedores do Go.

É uma fonte única para toda a documentação na biblioteca padrão e em pacotes de terceiros.

Os alunos são incentivados a se referir a este site como o primeiro porto de escala.

Depois de dominar os fundamentos do Go, esse será o único recurso necessário.

Finalmente, o manual de referência para Go é uma ótima fonte de informações para perguntas que você terá ao escolher as coisas.

Como em qualquer linguagem de programação, você precisará escrever código para melhorar. O Go é flexível e possui uma ampla variedade de aplicações.

Encontre um projeto de interesse e use o Go, fazendo uso particular do GoDoc à medida que avança. Um bom lugar para começar é https://tour.golang.org.