Arquivo da tag: golang

A Linguagem de Programação Go

Nota do livro: 10.

Descrição:

A linguagem de programação 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 não pressupõe 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ção de um programa em pacotes, arquivos e funções. Os exemplos apresentam muitos pacotes da biblioteca-padrão 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 não convencional de Go à programação orientada a objetos, em que métodos podem ser declarados em qualquer tipo e as interfaces são implicitamente satisfeitas. Esses capítulos explicam os princípios fundamentais de encapsulamento, composição 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 estão entrando em contato com a concorrência pela primeira vez.
  • Os dois últimos capítulos exploram recursos de baixo nível de Go. Um dos capítulos aborda a arte da metaprogramação usando reflexão. O outro mostra como usar o pacote unsafe para desviar-se do sistema de tipos em situações especiais e como usar a ferramenta cgo para criar vínculos (bindings) de Go com bibliotecas em C.