Notice
Recent Posts
Recent Comments
Link
목록프로토콜프로그래밍 (1)
study record
[Swift] 프로토콜 지향 프로그래밍
*이 글은 책 “스위프트 프로그래밍”을 읽고 작성된 글입니다. 객체지향 프로그래밍 패러다임에 기반을 둔 언어는 대부분 클래스의 상속을 사용해 타입에 공통된 기능을 구현한다. 그런데 스위프트의 표준 라이브러리에서 타입과 관련된 것은 대부분 구조체로 구현되어 있다. 상속이 되지 않는 구조체로 어떻게 다양한 공통 기능을 가질 수 있는지는 프로토콜, 익스텐션, 제네릭의 조화를 통해 이루어진다. 프로토콜 초기 구현 익스텐션은 기존 타입의 기능을 확장하고, 프로토콜은 프로토콜을 채택한 타입이 원하는 기능을 강제로 구현한다. 익스텐션과 프로토콜의 결합을 통해 중복 코드와 유지보수를 해결한다. 프로토콜을 정의할 때는 그 프로토콜을 채택한 타입에서 구현해주어야 하는 프로토콜의 요구사항을 구현할 수 없다. 단지 요구사항을..
Swift/스위프트 프로그래밍
2022. 1. 18. 10:33