프로토콜 지향 프로그래밍1 [Swift] Chapter 23. 프로토콜 지향 프로그래밍 23장 - 프로토콜 지향 프로그래밍 스위프트의 표준 라이브러리에서 타입과 관련된 것을 살펴보면 대부분이 구조체로 구현되어 있다. 구조체는 상속이 되지 않지만 프로토콜과 익스텐션, 제네릭 등으로 다양항 공통 기능을 갖도록 구현할 수 있다. 23.1 프로토콜 초기구현 익스텐션은 기존 타입의 기능을 확장하며, 프로토콜은 프로토콜을 채택한 타입이 원하는 기능을 강제로 구현한다. 그런데 특정 프로토콜을 정의하고 여러 타입에서 이 프로토콜을 준수하게 만들어 타입마다 똑같은 메서드, 프로퍼티, 서브스크립트 등을 구현해야 한다면 많은 코드를 중복 사용해야 하며, 유지보수는 힘들어 질 것이다. 이때 필요한 게 바로 익스텐션과 프로토콜의 결합이다. [코드 20-5]에서 중복 코드를 제거해보자. /* 코드 23-1. 익스텐.. 2021. 10. 13. 이전 1 다음