Usage of these terms varies by programming language. Java and languages derived from it tend to use "interface", while "protocol" is generally more popular elsewhere.
"Interfaces - define behavior for multiple types". learn.microsoft.com. Retrieved 16 November 2022. https://learn.microsoft.com/en-us/dotnet/csharp/fundamentals/types/interfaces
Miller, BJ (2015). Sams Teach Yourself Swift in 24 hours. Indianapolis, Indiana. p. 263. ISBN 978-0-672-33724-6. Any type can adopt a protocol to help give it extra functionality to accomplish a particular set of tasks.{{cite book}}: CS1 maint: location missing publisher (link) 978-0-672-33724-6
"Interfaces - define behavior for multiple types". learn.microsoft.com. Retrieved 16 November 2022. https://learn.microsoft.com/en-us/dotnet/csharp/fundamentals/types/interfaces
"Glossary — Python 3.11.0 documentation". docs.python.org. Retrieved 16 November 2022. https://docs.python.org/3/glossary.html#term-iterable
"Traits - The Rust Reference". January 2024. https://doc.rust-lang.org/reference/items/traits.html