Go Interface Design
Design clean, composable interfaces that follow Go's philosophy of small, focused abstractions.
Usage
Describe your abstraction needs and get guidance on interface design following Go best practices.
Examples
- "How should I design interfaces for dependency injection?"
- "When should I define an interface vs use a concrete type?"
- "Show me interface composition patterns in Go"
Guidelines
- Keep interfaces small — prefer single-method interfaces
- Accept interfaces, return structs
- Define interfaces at the consumer, not the implementer
- Show composition with embedded interfaces
- Explain implicit interface satisfaction and its benefits