🔥 프로토콜 문법

114자
2분

프로토콜을 정의하는 방법은 클래스, 구조체, 열거형을 정의하는 방법과 매우 유사합니다. 다음과 같은 형태로 프로토콜을 선언할 수 있죠.

swift
protocol SomeProtocol {
    // 프로토콜 정의가 여기에 들어갑니다.
}
swift
protocol SomeProtocol {
    // 프로토콜 정의가 여기에 들어갑니다.
}

사용자 정의 타입에서 특정 프로토콜을 채택할 때는 타입 이름 뒤에 콜론(:)을 붙이고 프로토콜 이름을 적어줍니다. 만약 여러 개의 프로토콜을 채택한다면 쉼표(,)로 구분하여 나열하면 됩니다.

swift
struct SomeStructure: FirstProtocol, AnotherProtocol {
    // 구조체 정의가 여기에 들어갑니다.
}
swift
struct SomeStructure: FirstProtocol, AnotherProtocol {
    // 구조체 정의가 여기에 들어갑니다.
}

클래스가 상위 클래스를 가지고 있다면, 상위 클래스 이름을 프로토콜 목록 앞에 적어주고 쉼표로 구분합니다.

swift
class SomeClass: SomeSuperclass, FirstProtocol, AnotherProtocol {
    // 클래스 정의가 여기에 들어갑니다.
}
swift
class SomeClass: SomeSuperclass, FirstProtocol, AnotherProtocol {
    // 클래스 정의가 여기에 들어갑니다.
}

이렇게 프로토콜을 정의하고 채택하는 기본적인 문법을 알아보았습니다. 간단하지만 강력한 이 문법을 통해 우리는 코드의 청사진을 그릴 수 있게 되었죠.

YouTube 영상

채널 보기
AI 추천 시스템의 원리, 벡터 사이의 각도와 코사인 유사도 | 선형대수학
AI는 왜 수백 차원의 벡터를 사용할까? 고차원 공간과 행렬 | 선형대수학
내적의 기하학적 의미와 코사인 유사도 원리 | 선형대수학
AI를 위한 선형대수학 - 소개 | 선형대수학
직교성과 벡터 투영 | 선형대수학
스칼라 곱셈과 내적의 기하학적 의미 | 선형대수학
투영과 예측, 그리고 선형 결합 | 선형대수학
우리가 매일 쓰는 맞춤법 검사기와 라우터 속에 숨겨진 알고리즘은? | Trie 자료구조 이야기