[swift] 상속을 통한 프로토콜 구현
프로토콜은 Swift 언어에서 유용하게 사용되는 강력한 기능 중 하나입니다. 프로토콜은 메서드와 프로퍼티의 청사진을 정의하며, 클래스, 구조체, 열거형 등에서 해당 청사진을 구현할 수 있도록 합니다.
프로토콜 상속
프로토콜은 클래스처럼 상속될 수 있습니다. 이를 통해 하나 이상의 다른 프로토콜을 병합하여 새로운 프로토콜을 정의할 수 있습니다.
protocol Drawable {
func draw()
}
protocol Colorable {
var color: String { get set }
}
protocol DrawableAndColorable: Drawable, Colorable {
func fillColor()
}
위의 예제에서 Drawable
과 Colorable
프로토콜을 상속하여 DrawableAndColorable
프로토콜을 정의했습니다.
프로토콜 구현
프로토콜을 클래스, 구조체, 열거형 등에서 구현하려면, 해당 형식에서 모든 프로토콜 요구사항을 충족해야 합니다.
class Square: DrawableAndColorable {
var color: String = "Red"
func draw() {
// draw square
}
func fillColor() {
// fill square with color
}
}
위 예제에서 Square
클래스는 DrawableAndColorable
프로토콜을 구현했습니다. 이를 통해 draw
와 fillColor
메서드를 제공하고 color
프로퍼티를 설정할 수 있습니다.
프로토콜 상속과 구현을 통해 Swift에서 강력하고 유연한 코드를 작성할 수 있습니다.
참고 자료: The Swift Programming Language - Protocols