Interfaces: a new leaf for an old book
- Track: Go devroom
- Room: K.4.601
- Day: Sunday
- Start: 11:45
- End: 12:15
This talk is about how we can use interfaces in Go to write testable code that can be easily modified, or "grows with grace".
Go's interfaces — static, checked at compile time, dynamic when asked for — are, for me, the most exciting part of Go from a language design point of view. If I could export one feature of Go into other languages, it would be interfaces.
— Russ Cox
We'll cover the following topics:
- Taking advantage of Go's automatically satisfied interfaces
- Choosing third-party packages that are easy to extend for your own purposes
- How interfaces are used in Go's standard library
- A look at the internals.
There will be a mixture of practices I've seen used in third-party packages and the standard library, and also some I've successfully applied to our own large codebase.
Speakers
Matthew Cottingham |