Static vs instance requirements
Differentiate between static (type-level) and instance (object-level) requirements in protocols, and learn how conforming types implement them.
Overview
Protocols can demand instance or static members. Knowing which is which helps you design clear APIs.
Instance requirement
Instance requirements must be implemented by each instance of the conforming type.
protocol Drawable {
func draw() -> String
}
struct Circle: Drawable {
func draw() -> String { "Drawing a circle" }
}
print(Circle().draw())All lessons in this course
- Protocols & Extensions basics
- Protocol extensions vs type extensions
- Static vs instance requirements