Logo
flag

Golang developer. Basic

Logo

Please rate the course

0.0
Language:
Russian
Duration:
23:25:07
Number of lessons:
38
Added date:
20/04/2024
Rating:
0.0

Course short description

Online workshop for mastering Golang (Go). 35 tasks. Complete all the tasks and become a Go developer in Russian or international projects.


Workshop program

Preparation of the environment. Language Basics

  • Variables, data types
  • Pointers in Go
  • Slices
  • Maps in Go
  • Language constructs and functions
  • defer - processing function exit
  • Panic and their processing
  • Error handling
  • Advanced work with errors

Modules and packages

  • Scopes, initialization via init()
  • Working with dependencies, go mod
  • Creating modules and their versioning
  • project layout (project structure)

Structures and interfaces

  • Structures in Go
  • Methods of structures
  • Interfaces and duck typing
  • Empty interface
  • Composite inheritance

Asynchrony

  • Goroutines
  • Go sheduler
  • Race condition
  • sync and atomic packages
  • errgroup package
  • sync.Pool
  • Channels part 1. Deadlocks
  • Channels part 2. Context

Testing, benchmarks and profiling

  • Unit testing in Go
  • Mocks, stubs and generation via GoMock
  • Table driven test vs closure driven tests
  • Test coverage
  • Benchmarks
  • Profiling with pprof

Code generation< /p>

  • Reflection
  • AST
  • Templates
  • Solving reflection problems
  • Wrapping

Write your comment

Logo