Course Overview
Go Programming workshop provides highly intensive hands-on training on both Go programming language and the Go ecosystem, which is packed with real-world guidance using code examples. This course lets the audience build real-world backend systems and Microservices using the Go ecosystem. Attendees can dive into production systems after completing this training. This course will also provide architecture guidance for building scalable backend systems in Go.
Requirements
- There are no prerequisites for this training program however a knowledge of any other programming language is helpful.
Curriculum
-
Why Go?
-
Setting Up Go
-
Basic Program, Go Tools
-
Working with Strings
-
Variables and Assignment
-
Errors
-
Cross Compiling
-
Functions
-
Pointers, Parameters, Return Values
-
Control Statements
-
Arrays, Slices, Maps, for
-
“OOP” – Structs, Interfaces, Encapsulation, Inheritance, Polymorphism Structs
-
Interfaces
-
Encapsulation, “Object Hierarchy”, “OOP”
-
Workspaces, go get, and managing dependencies
-
Concurrency: Goroutines, Parallelism
-
Concurrency: Handling Race Conditions
-
Concurrency: SyncGroup, Wait, Mutexes
-
Concurrency: Channels
-
Concurrency: Canceling and Context
-
Web Programming Templates
-
JSON
-
Regular Expressions
-
REST
-
Files
-
Databases
-
Unit Testing
-
Benchmarking
-
Profiling & Optimisation
-
Logging and Debugging
-
Monitoring Go Applications Using New Relic
-
Distributed Tracing Techniques Using Zipkin
-
API Documentation Using Swagger