Enhance your Go programming skills with our Advanced Go Programming course. Dive deep into Go’s architecture, optimise code performance, master concurrency, and step into web development with Go. This intensive course combines lectures, discussions, and hands-on exercises, ensuring participants not only understand advanced Go concepts but also apply them effectively.
Unlock the full potential of Go, streamline your web development processes, and build efficient, scalable applications.
By the end of the course, participants will:
• Gain deeper insight into Go: Familiarise yourself with Go’s architecture and nuances.
• Optimise code performance: Utilise advanced features, optimise for speed, and reduce garbage collector usage.
• Master web development: Explore templates, server creation, and the net/http package.
• Increase application efficiency: Understand concurrency, manage packages, and interact seamlessly with databases.
• Robust testing and deployment: Dive into mocking for unit tests, handle JSON APIs, and learn effective deployment strategies.
Participants should have a basic understanding of programming principles. Familiarity with Go is beneficial but not mandatory, as the course will revisit some essential Go concepts.
*We know each team has their own needs and specifications. That is why we can modify the training outline per need.
• Go Fundamentals and Core Concepts
• Introduction to Go and its unique architecture
• Setting up the Go development environment
• In-depth revision of Go syntax, structure, and built-in data types
• Exploring methods, interfaces, and Go’s approach to object-oriented programming
Advanced Data Processing and Programming Techniques
• Understanding and implementing key data structures: maps, slices, and interface keys
• Principles of concurrent programming (concurrency) in Go
• Memory optimisation techniques and using the pprof tool
• Using idiomatic Go code for best practices and maintainability
• Focusing on code reliability with mocking and unit testing
Go Tooling and Package Management
• Exploring advanced features of the Go build tool
• Comprehensive approach to package management in Go
• Introduction to database operations and integrations within Go
• Web Development in Go
• Understanding web concepts in Go and introduction to the net/http package
• Building dynamic websites using Go’s templating system
• Developing servers in Go, routing concepts, and building basic APIs
Key Aspects of Deployment
• Fundamentals of deploying Go applications from local to production environments
• Exploring containerisation and the CI/CD landscape for Go
• Conclusion and provision of resources for further self-directed learning
Hands-on learning with expert instructors at your location for organizations.
Master new skills guided by experienced instructors from anywhere.