**프로토콜 지향 프로그래밍(POP)**은 Swift가 선호하는 동작 공유 방식입니다. 기반 클래스를 상속하는 대신, 타입이 프로토콜을 준수하고, 프로토콜 익스텐션이 재사용 가능한 기본 구현을 제공합니다. 이를 통해 단일 상속의 경직성 없이 조합(composition)과 코드 재사용을 얻습니다.
동작 방식
프로토콜은 요구사항을 선언하고, 그 프로토콜의 익스텐션은 준수하는 모든 타입이 무료로 상속받는 기본 동작을 제공합니다.
swift
{
id: { }
}
{
name: { }
}
{
() -> { }
}
: , {
id:
name:
}
(id: , name: ).describe()
