Swift

[Swift] 프로토콜(Protocol)이란

devharrry 2018. 5. 4. 01:39

# 프로토콜(Protocol) 정의


- 프로토콜은 특정 역할을 수행하기 위한 메서드, 프로퍼티, 이니셜라이저 등의 요구사항을 정의합니다.

쉽게 말하면, 구조체나 클래스나 열거형에다가 "너는 이 기능이 꼭 필요해.. 그러니깐 이 기능을 꼭 구현해놨어야 해!" 라고 강요하는 것입니다.

 

- 타입에서 프로토콜의 요구사항을 충족시키려면 프로토콜이 제시하는 기능을 모두 구현합니다. , 프로토콜은 기능을 정의하고 제시 할 뿐이지 스스로 기능을 구현하진 않습니다.

 

# 프로토콜(Protocol) 정의


protocol 프로토콜 이름 {

// 정의

}


# 프로토콜(Protocol) 상속


- 프로토콜은 하나 이상의 프로토콜을 상속받아 기존 프로토콜의 요구사항보다 더 많은 요구사항을 추가할 수 있습니다.


- 프로토콜 상속 문법은 클래스의 상속 문법과 유사하지만, 프로토콜은 클래스와 다르게 다중 상속이 가능합니다.


클래스에서 상속과 프로토콜 채택을 동시에 하려면 상속받으려는 클래스를 먼저 명시하고 그 뒤에 채택할 프로토콜 목록을 작성합니다.



참고 : edwith - Swift입문 26.프로토콜 챕터 


'Swift' 카테고리의 다른 글

[Swift] DispatchQueue란?  (0) 2018.09.14
[Swift] Property - didSet, willSet이란  (0) 2018.06.11
[Swift] 클래스 vs 구조체,열거형  (3) 2018.05.04
[Swift] guard vs if  (3) 2018.04.27
[Swift] Inheritance- final 키워드  (0) 2018.04.25