Join David Gassner for an in-depth discussion in this video Defining and implementing interfaces, part of Learning Go.
- Go supports the use of interfaces…to define high-level abstractions…and create programming contracts.…Unlike other object-oriented languages,…you don't explicitly declare a type…to be an implementation of an interface.…Instead, there's a very simple rule.…If a type implements all of the methods…defined in an interface, then it's…an implementation of that interface.…And so there is no keyword "implements"…or anything similar, such as exists…in Java and C++.…
Interface and type relationships are implied…by the presence of the methods.…Here's an example.…In this file, I've declared a type named "Dog."…It's a simple structure with no fields.…Now, I'll define an interface.…I'll name it "Animal."…I'll start with the keyword type,…then the interface name,…and then the word "interface."…Within the code block, I'll declare…a single-method signature.…I'll name it "Speak," and it will return a string.…
Now, so far, there is no relationship…between the Dog structure and the Animal interface.…The Dog structure doesn't have a method named Speak.…
- Installing Go tools
- Creating and compiling a Go workspace
- Exploring variables, constants, and types
- Storing ordered and unordered values
- Grouping related values in structs
- Programming conditional logic and loops
- Defining and calling functions
- Handling errors
- Working with files
- Creating a simple HTTP server
Skill Level Beginner
1. Getting Started
2. Essential Go Skills
3. Managing Simple Values
4. Managing Complex Types and Collections
5. Managing Program Flow
6. Structuring Go Code
7. Working with Files and the Web
Next steps2m 26s
- Mark as unwatched
- Mark all as unwatched
Are you sure you want to mark all the videos in this course as unwatched?
This will not affect your course history, your reports, or your certificates of completion for this course.Cancel
Take notes with your new membership!
Type in the entry box, then click Enter to save your note.
1:30Press on any video thumbnail to jump immediately to the timecode shown.
Notes are saved with you account but can also be exported as plain text, MS Word, PDF, Google Doc, or Evernote.