안녕하세요 Pingu입니다.🐧 지난 글에서는 Combine의 Controlling Timing으로 분류된 Publisher, Operator에 대해 알아봤습니다. 이름 그대로 전달받은 값을 시간에 관련해서 처리하는 역할을 했었습니다. 이번 글에서는 Encoding and Decoding으로 분류된 Publisher와 Operator에 대해 알아보도록 하겠습니다. Encoding and Decoding 이름에서 직관적으로 느껴지듯 Upstream Publisher에서 받은 값을 encode, decode하는 역할을 할 거 같죠? Encoding and Decoding에 분류된 Publisher는 아래와 같습니다. Encode Decode 역시나 당연한 녀석들이 있는거 같습니다 😄 그리고 이들을 활용해서 만..
안녕하세요 Pingu입니다.🐧 지난 글에서는 Combine의 Republishing Elements by Subscribing to New Publishers로 분류된 FlatMap, SwitchToLatest에 대해 알아봤습니다. 여러 개의 Publisher들 중 몇 개를 subscribe 할지 혹은 가장 최근에 subscribe 한 Publisher의 값만 Downstream으로 전달하는 역할을 했었습니다. 이번 글에서는 Handling Errors로 분류된 Publisher와 Operator에 대해 알아보도록 하겠습니다. Handling Errors 분류된 이름에서 느낄 수 있듯 에러를 처리하는 Publisher와 Operator들을 알아보겠습니다. Handling Errors에 분류된 Publis..
안녕하세요 Pingu입니다.🐧 지난 글에서는 Combine의 Combining Elements from Multiple Publishers로 분류된 것들 중 Collecting and Republishing the Oldest Unconsumed Elements from Multiple Publishers 역할을 하는 Zip 시리즈에 대해 알아봤습니다. 여러 개의 Publisher에서 가장 오래 사용되지 않은 값들을 모아서 처리하는 역할을 했었습니다. 이번 글에서는 Republishing Elements by Subscribing to New Publishers로 분류된 것들에 대해 알아보도록 하겠습니다. Republishing Elements by Subscribing to New Publishers ..
안녕하세요 Pingu입니다.🐧 지난 글에서는 Combine의 Operator 중 Applying Mathematical Operations on Elements로 분류된 Operator들을 알아봤었습니다. Upstream에서 받은 값은 간단한 수학 연산으로 처리해서 만든 새로운 값을 Downstream으로 보내는 역할을 했습니다. 이번 글에서는 이어서 Applying Matching Criteria to Elements로 분류된 Operator에 대해서 알아보도록 하겠습니다. Applying Matching Criteria to Elements 이번에 공부할 녀석들을 분류해둔 이름을 보면 값들이 어떤 기준에 맞는지 확인하는 역할을 할 거 같네요. 그럼 여기에 분류된 Publisher에는 어떤 것들이 있는..
안녕하세요 Pingu입니다.🐧 지난 글에서는 Combine의 Operator 중 Mapping Element 역할을 하는 녀석들을 알아봤었습니다. Map, TryMap, MapError, Scan, TryScan, SetFailureType이 Mapping Element로 분류된 Operator 들이었죠. 이번 글에서는 이어서 Filtering Element로 분류된 Operator에 대해 알아보도록 하겠습니다. Filtering Elements 이름을 보면 뭔가를 필터링해줄 거 같은데요, 여기에 분류된 Publisher는 아래와 같습니다. Filter TryFilter CompactMap TryCompactMap RemoveDuplicates TryRemoveDuplicates ReplaceEmpty ..
안녕하세요 Pingu입니다.🐧 지난 글... 이 좀 오래됐는데, 어쨌든 지난 글에서는 Combine의 Publisher, Subscriber를 연결하는 Subscription에 대해 알아봤었는데, 이번 글에서는 드디어 Operator에 대해 알아보려고 합니다. Combine에 Opeartor들이 얼마나 많은지...; 근데 그럼에도 불구하고 부족한 게 많아서 직접 만들어서 써야 하는 것들이 많은 거 같더라고요. 일단 기본부터 하자는 생각에 Apple에서 미리 만들어둔 Operator들을 먼저 공부해보도록 하겠습니다. 일단 Apple의 Publishers 공식문서에 보면 미리 구현해둔 Operator들이 모두 정리되어있는데요, 그중에 Mapping Elements라는 녀석들부터 알아보도록 하겠습니다. Ope..
안녕하세요 Pingu입니다.🐧 지난 글에서는 Apple에서 Subscriber 사용을 위해 미리 정의해둔 것들에 대해 알아봤었는데요, 이번 글에서는 이전에 배운 Publisher, Subscriber를 연결하는 역할을 하는 Subscription에 대해 알아보려고 합니다. Subscription이란? Subscription은 정의부터 어떤 녀석인지 느낌이 옵니다. Subscription도 프로토콜이며 Cancellable이라는 걸 채택했네요. 정의를 보면 Subscriber와 Publisher의 연결을 나타내는 프로토콜이라고 합니다. 설명을 좀 더 보면 Subscription에는 특정 Subscriber가 Publisher를 subscribe 할 때 정의되는 ID가 있어서 Class로만 정의해야 한다고 ..
안녕하세요 Pingu입니다.🐧 지난 글에서는 Combine을 사용하지 않던 코드에서 간단하게 Combine을 적용하고 싶을 때 사용하면 좋은 Subject를 알아봤습니다. 이번 글에서는 여기서 알아본 미리 정의된 Publisher와 같이 미리 정의된 Subscriber에는 뭐가 있는지 살펴보려고 합니다. Subscriber란? 간단하게 Subscriber가 뭔지 다시 알아볼게요. 정의부터 살펴보면 다음과 같았습니다. 즉 간단하게 말해서 Publisher에게 값을 받기 위해 선언해둔 프로토콜이라고 할 수 있습니다. 그리고 구현은 다음과 같이 되어있었어요. @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *) public protocol Subscrib..
- Total
- Today
- Yesterday
- DP
- Xcode
- mac
- document
- IOS
- design
- dfs
- 문법
- Publisher
- 자료구조
- 알고리즘
- 프로그래밍
- OSTEP
- Combine
- 스위프트
- System
- OS
- 코딩테스트
- 코테
- 아이폰
- 동시성
- operating
- BFS
- 테이블뷰
- pattern
- Swift
- 백준
- operator
- 앱개발
- Apple
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |