Working with Design Patterns in Go (Golang)

Streamline your development by learning how common design patterns are implement in Go.

Course Summary

Who Is This Course For

  • Go developers who want to learn how make the development process more efficient. 

Requirements

  • Some familiarity with the Go programming language is required. 

What You Will Learn

  • How to use common design patterns in Go
  • Learn how to create loosely coupled software components
  • Streamline the software development process by using well known patterns
  • Build a real-world application using design patterns

Description

Go is a powerful language for building efficient and scalable applications. But as your projects grow, you'll encounter common problems that can be elegantly solved with design patterns. This course will equip you with the knowledge and skills to leverage these design patterns effectively in your Go code. We'll explore various categories of patterns, including:

  • Creational Patterns: Learn techniques for object creation that promote flexibility and decoupling. 
  •  Structural Patterns: Discover ways to compose classes and objects to achieve desired functionality.  
  • Behavioral Patterns: Explore patterns that define communication and interaction between objects.  

By understanding these patterns, you'll gain the ability to:

  • Write cleaner, more maintainable, and reusable code. 
  •  Improve the design and architecture of your Go applications.  
  • Solve common programming challenges with proven solutions.  
  • Communicate design concepts more effectively with other developers.

We'll approach design patterns with a practical lens, focusing on real-world Go scenarios. In fact, we'll build a simple web application that allows us to see how, why, and when you can use a particular design pattern to make your code more efficient, maintainable, and easy to understand. My goal is ensure that you'll gain hands-on experience implementing these patterns so that you can use them in your own projects.

So, whether you're a seasoned Go developer or just getting started with the language, this course will provide you with valuable tools to take your Go development skills to the next level.

Please note that this course requires you to download Docker Desktop from Docker. If you are a Udemy Business user, please check with your employer before downloading software.

Course Pricing

Enroll in course

$14.99 CAD

Buy Now

Course Curriculum

Trevor Sawler

Trevor has more than twenty years of experience in professional software development, and over 30 years of experience as a university professor. As an entrepreneur, he has worked with a broad range of clients, including Thomson Nelson, Hewlett Packard, the Royal Bank of Canada, Keybank, Sprint, and many, many others. He also has extensive management and project management experience. He has led teams of fifty developers and artists on multi-million dollar projects, and much smaller teams on much smaller projects. Trevor continues to work projects for a variety of clients every day. As a professor, he has taught in a wide variety of course areas, including Computer Science, English, Irish, and American literature, and a number of "crossover" courses that bridge the liberal arts and technological fields. He has won regional, national, and international awards for his work in the IT field, and has also won awards for his teaching and research as a University professor.