Go for Real World Applications
Writing, testing, Dockerizing, and deploying Go apps
Description
Go is a powerful backend language that is an asset to any developer's toolkit. It is extremely performant, a relatively easy language in terms of syntax, and has many valuable features like testing and JSON serialization and deserialization built in. In this practical, hands-on, step-by-step style course, we'll build a fully functioning Go application from complete scratch along these steps:
- Scaffolding the Go application and writing main.go
- Writing cron jobs in Go
- Writing a powerful generic HTTP function
- Using that HTTP function to call an API and serialize the response into Go object's using Go
- Use that HTTP function to POST messages to a Slack channel
- Write tests using Go's built in testing module
- Dockerize the application so that it can be run with docker compose
- Round off the course by crafting a complete CI/CD pipeline that first builds and tests our application, then Dockerizes and uploads the application to Docker Hub
- We'll see that once the Circle CI pipeline is setup, we can control the entire pipeline process through pushing to a git branch alone, and never have to manually do any sort of configuration or commands for our deploys
By the end of the course, you will have the confidence and know how to build Go applications from start to finish - including testing, Dockerizing, and deploying them!
What You Will Learn!
- Scaffolding a go project and writing a main go file as well as additional packages
- Dockerizing a Go application
- Writing basic tests in Go
- Orchestrating a CI/CD pipeline that first runs tests the deploys the Dockerize go application to Docker Hub
Who Should Attend!
- Beginner to Intermediate developers who want to write their Go
- Advanced developers coming from other languages who want to see the moving parts of a Go application