JAVA의 interface와 비슷한 역할인 Swift의 protocol 이다. 프로토콜 (protocol) 특정 역할을 수행하기 위한 메서드, 프로퍼티, 기타 요구사항을 정의함 구조체, 클래스, 열거형은 프로토콜을 채택(Adopted)해서 특정 기능을 수행하기 위한 프로토콜의 요구사항을 실제로 구현 타입에서 프로토콜의 요구사항을 충족시키려면 프로토콜이 제시하는 청사진의 기능을 모두 구현해야 한다. 프로토콜의 정의 protocol 프로토콜명 { /* 정의부 */ } 프로토콜의 구현 프로토콜은 항상 var 키워드를 사용한다. protocol Viewer { //프로퍼티 요구 var viewer : String { get set }; var language : String { get }; //메소드 요구 f..