Intermediate
329 Lessons
70h
Certificate of Completion
Takeaway Skills
Familiarity with the core features of the Go language
Hands-on experience with developing Go functions and packages
Thorough understanding of advanced Go features such as reflection, interfaces, and generics
Ability to design and develop feature-rich Windows and UNIX utilities and system tools in Go
Hands-on experience with designing highly concurrent applications in Go
Ability to build REST, gRPC, and WebSocket-based servers and clients in Go
Course Overview
Go is one of the most popular programming languages today in the systems programming and networking space. Go has built-in concurrency capabilities using a simple concurrency model implemented using goroutines and channels. In addition to Go’s rich and reliable standard library, handy Go packages (cobra and viper) allow us to develop powerful command-line utilities (e.g., docker and hugo) in Go. You will start the course by covering the basics of Go—syntax, basic and composite data types, etc.—before movin...
Course Content
Course Introduction
Introduction to Go
Basic Go Data Types
Composite Data Types
Reflection and Interfaces
Go Packages and Functions
26 Lessons
Telling a UNIX System What to Do
36 Lessons
Go Concurrency
40 Lessons
Building Web Services
26 Lessons
Working with TCP/IP and WebSocket
26 Lessons
Working with REST APIs
22 Lessons
Code Testing and Profiling
29 Lessons
Working with gRPC
16 Lessons
Go Generics
17 Lessons
Conclusion
1 Lesson
Appendix A—Go Garbage Collector
5 Lessons
How You'll Learn
You don’t get better at swimming by watching others. Coding is no different. Practice as you learn with live code environments inside your browser.
Videos are holding you back. Educative‘s interactive, text-based lessons accelerate learning — no setup, downloads, or alt-tabbing required.
Learn faster and smarter with adaptive AI tools embedded in every Educative course.
Built-in assessments let you test your skills. Completion certificates let you show them off.
Recommended Courses
BEFORE STARTING THIS COURSE
AFTER FINISHING THIS COURSE