반응형
struct에서 공통된 기능을 쓰기 위해서 protocol을 통해 추상화 과정을 거친다.
하지만 일부 기능은 구현이 필요 없는 경우도 존재한다.
protocol Car {
func stop() {
}
func autostop() {
}
}
struct Truck: Car {
func stop() {
}
func autostop() {
}
}
struct Van: Car {
func stop() {
}
func autostop() {
}
}
일부 추상화 함수를 extension을 통해 작성하게 되면, 해당 프로토콜을 채택한 struct에서 모두 구현해야할 필요가 없어지게 된다.
protocol Car {
func stop() {
}
}
extension Car {
func autostop() {
}
}
struct Truck: Car {
func stop() {
}
func autostop() {
}
}
struct Van: Car {
func stop() {
}
}
참고 문서
반응형
'Programming > Swift' 카테고리의 다른 글
[SwiftUI] @FocusState Property Wrapper (0) | 2022.09.19 |
---|---|
realm swift 강의 (0) | 2022.08.16 |
Rick and Morty API (0) | 2022.08.15 |
You don’t (always) need [weak self] (0) | 2022.08.12 |
애플 공식사이트에서 제공하는 SwiftUI 강좌 (0) | 2022.05.30 |