Alguns dos melhores recursos para dominar o Golang

Neste artigo, listarei alguns dos melhores recursos disponíveis na Internet para aprender e dominar o Golang.

Como cada usuário tem preferência por diferentes modos de aprendizado, estarei cobrindo artigos baseados em texto, tutoriais, vídeos e cursos populares sobre Golang.

Golang está crescendo rapidamente em termos de popularidade, e você vai se apaixonar por Go assim que começar a explorá-lo.

Guia do desenvolvedor

Com cerca de 50 mil alunos, este é um dos melhores pacotes completos para aprender Go desde o básico. Este curso é altamente testado e funciona bem para a maioria dos alunos; depois de comprar, você tem acesso vitalício a isso. Caso você goste de aprender com cursos de vídeo completos, isso é exatamente o que você precisa!

este curso é ideal para iniciantes e para pessoas que desejam revisitar os conceitos introdutórios. O curso tem 9 horas de vídeo sob demanda com recursos e atribuições de código adicionais.

Alguns dos tópicos abordados neste curso são –

  • Configuração, instalação e noções básicas do idioma.
  • Pacotes e estruturas de arquivos
  • Variáveis, funções, matrizes e fatias
  • Cobertura detalhada de mapas, structs e interfaces
  • Canal e go-rotinas (programação simultânea)

Bootcamp

Com mais de 300 palestras, o curso bootcamp completo na Udemy é definitivamente uma boa compra e o lugar certo para aprender Golang. Você aprende criando aplicativos como –

  • analisador de log
  • Scanner de arquivo
  • Máscara de spam
  As 26 melhores alternativas gramaticais

Junto com isso, o curso oferece mais de 1000 exercícios práticos.

Além de cobrir os conceitos básicos do Go como structs, interfaces e canais, este curso tem um projeto interessante onde você aprende como animar uma bola quicando.

Você também receberá um certificado de conclusão ao final do curso.

Passeio de Go

Bem, sou um grande fã da documentação, blogs e tutoriais oficiais do Golang. Este curso interativo é gratuito e não requer nenhuma configuração local. Basta abrir o site e começar a aprender desde o básico com código prático para cada tópico.

Este é um curso com o qual você deve começar se estiver apenas procurando explorar e quiser aprender o básico sem nenhuma configuração.

Vá pelo exemplo

Este não é exatamente um curso completo, mas um lugar para ir quando você esquecer o básico. O site cobre todos os conceitos com um texto introdutório e um exemplo completo de execução. O site é tão simples quanto poderia ser, focando assim na aprendizagem. Algumas das postagens básicas de introdução são sobre –

  • Variáveis ​​e Constantes
  • Por
  • If/Else e Switch
  • Matrizes e fatias
  • Mapas
  • Variar
  • Funções

e quase todos os tópicos que você precisa! Fazer Confira e marque-o como referência.

Aprenda X em Y minutos

Bem, se você quiser um rápido tour pelo básico, aprender X em Y minutos é um recurso incrível não apenas para Go, mas para quase todas as linguagens de programação. É voltado para a comunidade e abrange muitos tópicos em uma única página. Contribua assim que ficar bom em Go.

Aqui está um trecho de código do tutorial, que explica a programação simultânea em uma função.

// We'll use inc to increment some numbers concurrently.
func learnConcurrency() {
    // Same make function used earlier to make a slice. Make allocates and
    // initializes slices, maps, and channels.
    c := make(chan int)
    // Start three concurrent goroutines. Numbers will be incremented
    // concurrently, perhaps in parallel if the machine is capable and
    // properly configured. All three send to the same channel.
    go inc(0, c) // go is a statement that starts a new goroutine.
    go inc(10, c)
    go inc(-805, c)
    // Read three results from the channel and print them out.
    // There is no telling in what order the results will arrive!
    fmt.Println(<-c, <-c, <-c) // channel on right, <- is "receive" operator.

    cs := make(chan string)       // Another channel, this one handles strings.
    ccs := make(chan chan string) // A channel of string channels.
    go func() { c <- 84 }()       // Start a new goroutine just to send a value.
    go func() { cs <- "wordy" }() // Again, for cs this time.
    // Select has syntax like a switch statement but each case involves
    // a channel operation. It selects a case at random out of the cases
    // that are ready to communicate.
    select {
    case i := <-c: // The value received can be assigned to a variable,
        fmt.Printf("it's a %T", i)
    case <-cs: // or the value received can be discarded.
        fmt.Println("it's a string")
    case <-ccs: // Empty channel, not ready for communication.
        fmt.Println("didn't happen.")
    }
    // At this point a value was taken from either c or cs. One of the two
    // goroutines started above has completed, the other will remain blocked.

    learnWebProgramming() // Go does it. You want to do it too.
}

Tão conciso e objetivo, experimente se quiser uma visão geral rápida de qualquer tópico específico para Golang.

  8 Software de monitoramento de banco de dados útil para analisar o desempenho

Gotime

Se você é um fã de aprendizado de áudio, Gotime é um bom podcast. Muitos desenvolvedores incríveis vêm e compartilham seu conhecimento do mundo real e como eles usam o Go em suas empresas. Você também deve conferir a GopherCon (conferência de golang), na qual pessoas proeminentes compartilham seus aprendizados com a comunidade.

Essas comunidades discutem as últimas tendências e melhorias em torno do Go.

Vou adicionar alguns dos podcasts populares aqui –

livros

Existem muitos livros muito bons. Vou adicionar alguns dos favoritos aqui –

Blogues

Existem alguns blogs muito bons em torno de Golang. Há muitos artigos sobre mídia também, que você pode explorar. Vou compartilhar alguns aqui que você achará útil –

  Burn-in de tela OLED: quão preocupado você deve estar?

Youtube

Gosta de aprendizado baseado em vídeo?

Claro, confira este tutorial de Golang para iniciantes do freeCodeCamp.

Conclusão

Eu recomendaria concluir um dos cursos acima se você for iniciante e ingressar na comunidade Golang. Além disso, compartilhe seus aprendizados com o mundo e contribua para tornar o Go ainda melhor. Espero que você tenha aprendido algo útil e tudo de bom para sua jornada com o Go.