Protocol Oriented Programming
Protocols, extensions, default implementations, PATs, protocol composition, type erasure
1What is a protocol in Swift?
What is a protocol in Swift?
回答
A protocol defines a set of properties and methods that a type must implement. It acts as a contract between the protocol and conforming types. Protocols enable interface definition without imposing inheritance hierarchies, promoting composition and code reusability.
2What is protocol conformance?
What is protocol conformance?
回答
Conformance means a type (class, struct, or enum) implements all required properties and methods from a protocol. A type can conform to multiple protocols simultaneously. Conformance establishes a type relationship independent of inheritance.
3What is a protocol extension?
What is a protocol extension?
回答
A protocol extension provides default implementations for protocol methods. All conforming types receive these implementations automatically without redefining them. This promotes code reuse and significantly reduces boilerplate.
How to define a protocol with a required property?
What is protocol inheritance?
+17 面接問題