[swift] 프로토콜 준수 검사

프로토콜은 특정 유형의 요구사항을 정의하는데 사용됩니다. 특정 유형이 프로토콜을 준수하는지를 확인하기 위해서는 isas 연산자를 사용할 수 있습니다.

이제 간단한 예제를 통해 프로토콜 준수 여부를 확인하는 방법을 살펴보겠습니다.

프로토콜 정의

protocol Printable {
    func print()
}

위의 코드에서 Printable 프로토콜은 print() 메서드를 요구합니다.

클래스 정의

class SomeClass: Printable {
    func print() {
        // print 구현
    }
}

class AnotherClass {
    // print() 메서드를 구현하지 않음
}

위의 코드에서 SomeClassPrintable 프로토콜을 준수하여 print() 메서드를 구현하고, AnotherClassprint() 메서드를 구현하지 않습니다.

프로토콜 준수 여부 확인

이제 isas 연산자를 사용하여 SomeClassAnotherClass의 프로토콜 준수 여부를 확인해 보겠습니다.

let someInstance: Any = SomeClass()
let anotherInstance: Any = AnotherClass()

print(someInstance is Printable) // true
print(anotherInstance is Printable) // false

위의 코드에서 someInstancePrintable 프로토콜을 준수하므로 true를 반환하고, anotherInstancePrintable 프로토콜을 준수하지 않으