A linguagem de programaçao go é a fonte mais confiável para qualquer programador que queira conhecer go
O livro mostra como escrever código claro e idiomático em go para resolver problemas do mundo real
Esta obra nao pressupoe conhecimentos prévios de go nem experiência com qualquer linguagem específica, portanto você a achará acessível, independentemente de se sentir mais à vontade com javascript, ruby, python, java ou c++
O primeiro capítulo contém um tutorial com os conceitos básicos de go, apresentado por meio de programas para e/s de arquivos e processamento de texto, imagens gráficas simples, clientes e servidores web
Os primeiros capítulos discutem os elementos estruturais de programas go- sintaxe, controle de fluxo, tipos de dados e a organizaçao de um programa em pacotes, arquivos e funçoes
Os exemplos apresentam muitos pacotes da biblioteca-padrao e mostram como criar seus próprios pacotes
Capítulos mais adiante explicam o sistema de pacotes com mais detalhes, além de mostrar como compilar, testar e manter projetos usando a ferramenta go
Os capítulos sobre métodos e interfaces apresentam a abordagem nao convencional de go à programaçao orientada a objetos, em que métodos podem ser declarados em qualquer tipo e as interfaces sao implicitamente satisfeitas
Esses capítulos explicam os princípios fundamentais de encapsulamento, composiçao e substituibilidade usando exemplos realistas.dois capítulos sobre concorrência apresentam abordagens detalhadas a esse assunto cada vez mais importante
O primeiro, que discute o sistema básico de gorrotinas e canais, apresenta o estilo conhecido como processos sequenciais comunicantes (communicating sequential processes) pelo qual go é renomado
O segundo aborda aspectos mais tradicionais de concorrência com variáveis compartilhadas
Esses capítulos oferecem uma base sólida para programadores que estao entrando em contato com a concorrência pela primeira vez
Os dois ultimos capítulos exploram recursos de baixo nível de go
Um dos capítulos aborda a arte da metaprogramaçao usando reflexao
O outro mostra como usar o pacote unsafe para desviar-se do sistema de tipos em situaçoes especiais e como usar a ferramenta cgo para criar vínculos (bindings) de go com bibliotecas em c.