Protocol
-
[Swift] Hashable 프로토콜Programming Language/Swift 2022. 7. 1. 16:42
개발하다보면 Hashable 프로토콜을 정말 많이 사용하게 된다. Hashable과 옵셔널 값을 같이 사용하면서 생긴 궁금증도 있고, Hashable을 굉장히 많이 사용하지만 깊이 알고 있지 않은 상태로 사용하고 있는 것 같아 Hashable 이 어떤 프로토콜인지 좀 더 자세히 공부해보려고 한다. Hashing Hasing(해싱)은 주어진 key나 문자열을 다른 값으로 변환시키는 작업이다. 해싱을 통해 고정 길이의 더 짧은 key, value로 표현되고, 이 key-value를 사용해서 원래의 값을 더 쉽고 빠르게 찾을 수 있다. 해싱은 데이터를 특정 정수 값으로 매핑하는 함수, 알고리즘을 사용한다. 즉 hash function을 사용해서 데이터에서 새로운 값을 만드는 것이다. 이 새로운 값을 hash ..
-
[WWDC22] Design protocol interfaces in SwiftiOS 2022. 6. 16. 18:08
Design protocol interfaces in Swift - WWDC22 - Videos - Apple Developer Learn how you can use Swift 5.7 to design advanced abstractions using protocols. We'll show you how to use existential types, explore how... developer.apple.com Understand type erasure 연관 타입을 가진 프로토콜이 existential 타입과 어떻게 상호작용하는지 볼 것이다. Animal 프로토콜에 produce() 메서드를 추가해서 음식을 생산하는 것을 추상화했다. 다른 동물마다 달라지는 produce()의 리턴 타입을 추상화하는 가..