프로토콜은 특정 역할을 하기 위한 메서드, 프로퍼티, 기타 요구사항 등의 청사진을 정의합니다.
*청사진…? 저도 무엇인지 몰라서 찾아봤습니다. 대충 계획, 구상 정도로 생각하면 됩니다.
<aside> ✅ 프로토콜은 정의를 하고 제시를 할 뿐이지 스스로 기능을 구현하지는 않습니다!
</aside>
<aside> 📌 프로토콜 정의 방법
protocol 프로토콜 이름 {
프로토콜 정의
}
</aside>
<aside> 😚 프로토콜 채택
struct SomeStruct: AProtocol, AnotherProtocol {
// 구조체 정의
}
class SomeClass: AProtocol, AnotherProtocol {
// 클래스 정의
}
enum SomeEnum: AProtocol, AnotherProtocol {
// 열거형 정의
}
</aside>
<aside> 👀 클래스가 다른 클래스를 상속받고 프로토콜을 채택할 경우
class SomeClass: SuperClass, AProtocol, AnotherProtocol {
// 클래스 정의
}