Advanced Golang
Please rate the course
Course short description
This course is designed for those who already have basic knowledge of Golang and want to move on to creating full-fledged APIs in this language using the Postgres database and the popular ORM Gorm. In addition, the course will help you better understand the internal structure of Golang and master working with goroutines.
During the training, we will discuss topics such as Go allocator, Stack, Heap, GC, and then move on to studying goroutines. We will analyze how they function, how they can be synchronized, and how to use channels for their interaction. After that, we will begin to develop a large API using a pure http package, studying routing, request and response processing. We will connect to PostgreSQL via ORM Gorm, running it in Docker, and implement all types of CRUD operations.
The course will be predominantly practical, since all the theory is discussed directly in the course of creating an API. The project involves the development of a complex link shortening service with authorization and statistics. In addition, the course includes many exercises that will help to strengthen the acquired knowledge.
After completing the course, you will be able to:
- Use goroutines
- Understand the internal structure of Golang
- Understand how GC works and memory allocation
- Work with context
- Create an API in Golang
- Design an API architecture
- Work with Gorm
- Create authorization and work with JWT
- Work with middleware
- Write CRUD requests
- Write tests for API