Not just Golang, but for learning any programming language, one should be aware of basic concepts like data types, variables, branching, looping, functions, etc.
If you are familiar with the C language, learning Golang will be very easy. The syntax of Golang is somewhat similar to the C language. However, switching from other programming languages is also more accessible and more interesting.
As a beginner, you should cover the following topics to learn GoLang:
- Basic syntax and data structure go syntax
- Learn the basics of Go Tour to Go
- Understand basic data types
- Build something using control structures
- Understand the pointer and its scope
- Get practice with functions
- Get practice with array, slice, maps, and type conversion
- Understand Interface and its usage interface in golang
- Error handling (Go doesn’t have exceptions, you have to handle errors in a different way) Handling errors in golang
- Goroutine and channel for concurrency
- concurrency in go
- dive into go concurrency
- Understand Go’s design patterns
– go patterns
– go clean architecture - Learn testing with Go Write test in Go
- Web frameworks and routers (at least one)
Knowledge of log frameworks can be useful log framework
Recommended Books for GoLang:
- The Go Programming Language (Alan A. A. Donovan and Brian Kernighan)
- Learning Go (Jon Bodner)
Some useful resources/tutorials:
- https://go.dev/tour/welcome/1
- https://gobyexample.com
- https://golangbot.com
- https://www.golang-book.com/books/intro