Interfaces are one of the most powerful Go features. They allow you to develop applications and libraries that are flexible, re-usable, and testable.
Like other programming languages, interfaces allow you to abstract behavior without prescribing how objects implement them. Unlike other programming languages, however, Go favors small interfaces and implements them implicitly. This concept changes the paradigm of how we think about interfaces and design our programs to use them.
In this talk we’ll deep dive into interfaces by applying them to solve different challenges, through hands-on examples. At the end of this talk, you will be able to:
- Understand the benefits of Go Interfaces;
- Learn how to define, implement, and use interfaces;
- Apply interface concepts to make your code re-usable and testable;
- Explore recommended practices to obtain the most value out of interfaces
About Ricardo Gerardi
Ricardo Gerardi is a Senior Consultant at Red Hat Canada where he specializes in IT automation with Ansible and OpenShift. He has been a Linux and open source enthusiast and contributor for over 20 years. He is currently interested in hacking stuff using the Go programming language, and he’s also the author of Powerful Command-Line Applications in Go. Ricardo also writes regularly for Opensource.com and Enable Sysadmin community publications. Ricardo enjoys spending time with his daughters, reading science fiction books, and playing video games.
Check out our YouTube playlist to watch all the talks from Emerging Technologies for the Enterprise 2021.