iOS/Combine (3) 썸네일형 리스트형 [Combine] Subscribe(구독) 의 의미 (Pub-Sub 패턴) 목차) 1. Pub-Sub 패턴 2. Subscribe(구독)의 의미 3. 주로 쓰이는 구독자 생성 방식 - sink() 1. Pub-Sub 패턴 Combine은 Pub-Sub 패턴을 따른다. 구독의 의미를 이해하기 위해 먼저 Pub-Sub 패턴에 대해 간단하게 알아보고 시작하자. · Publish(발행) - Subscribe(구독) 패턴 · 메시지기반 아키텍쳐 패턴 중 하나 · Publisher(발행자)와 Subscriber(구독자)간 메시지 수신 및 처리 · 구독자는 원하는 주제(Subject)에 대한 구독을 등록하여 메시지를 받음 · 주제(Subject)는 발행자(Publisher)가 발행하는 데이터의 종류 또는 주제를 나타낸다. 2. Subscribe(구독)의 의미 구독의 주요 목적은 데이터의 흐.. [Combine] append(_:) 의 3가지 사용방법 분류 Combine Framework Publishers Protocol Publisher Operator Applying Sequence Operations to Elements Append(_:) [ 첫번째 ]: 가변인자로 여러개의 요소를 인자로 받아 append() 처리 후 발행 하는 경우 func append(_ elements: Self.Output...) -> Publishers.Concatenate 설명 [코드] func append(numbers:Int...){ cancellable = numbers.publisher .append(100, 200, 300) .sink { print("\($0)") } } //실행 append(numbers: 1,2,3,4,5) // 결과: "1 2 3 4.. [Combine] map(_:), tryMap(_:) 1. map(_:) 1) 분류 Combine Framework Publishers Protocol Publisher Operator Mapping Elements 2) 타입 func map(_ transform: @escaping (Self.Output) -> T) -> Publishers.Map Upstream Publisher(상위 스트림에서 발행된 것)를 (변환하고자 하는 타입)로 변환하고, 해당 작업은 비동기로 처리되므로 처리가 완료되면 콜백 함수를 실행(@escaping) 한다. Publishers.Map을 return 한다. 3) 설명 [상황] 놀이동산 티켓팅 프로그램을 개발한다고 가정해보자. 친구 다섯명이 자신들의 이름과 나이를 입력하고 자유이용권을 선택 후 티켓 발행을 눌렀다. 다섯명에 대.. 이전 1 다음