Rx Combine Async Task - Retry
Upstream - Downstream 1. Upstream (상류) • 데이터를 방출하는 쪽을 의미합니다. • RxSwift에서 Observable 또는 Subject가 upstream의 역할을 합니다. • 데이터를 생성하거나 제공하며, 스트림의 출발점입니다. • 예: 버튼 탭 이벤트, 네트워크 요청, 데이터베이스에서 읽기 등. 2. Do...
Upstream - Downstream 1. Upstream (상류) • 데이터를 방출하는 쪽을 의미합니다. • RxSwift에서 Observable 또는 Subject가 upstream의 역할을 합니다. • 데이터를 생성하거나 제공하며, 스트림의 출발점입니다. • 예: 버튼 탭 이벤트, 네트워크 요청, 데이터베이스에서 읽기 등. 2. Do...
Rx ↔ Combine 변환 feat. RxCombine RxCombine 라이브러리 사용 https://github.com/CombineCommunity/RxCombine .package(url: "https://github.com/CombineCommunity/RxCombine.git", from: "1.6.0") TodosAPI.fet...
RxSwift flatMap 과 flatMapLatest 공통점은 앞에 이벤트를 받아서 뒤로 전달하는 기능으로 보통 API에 호출 결과물로 이어서 작업할때 자주 사용한다. 차이점은 아래와 같다. flatMap 아래 코드는 버튼 탭을 하면 Int 값을 전달하는 Observalble 을 생성가고, 그걸 구독하고 있다. 두번 탭을 통해 스트림...
URLSession 호출 정리 출처: [link] https://github.com/timojaask/URLSession-Cheat-Sheet Simple GET request //URL, URLReqeust 형태로 호출이 가능 URLSession.shared.dataTask(with: url) { (data, response, error) in...
Closure 함수를 Async 로 변경 continuation 활용 /// 모든 할 일 목록 가져오기 static func fetchTodos(page: Int = 1, completion: @escaping (Result<BaseListResponse<Todo>, ApiError>) -> Void ) { ...
Closure 클로저 Result<Success, Failure> 활용 Result 는 제너릭 타입을 가진 enum 으로 아래처럼 선택한 case에 맞는 성공데이터 또는 실패 에러코드를 전달 한다. @frozen public enum Result<Success, Failure> where Fail...
> git --version git version 2.47.1 > git config --global init.defaultBranch main > git add targetFilename > git add . > vi .gitignore ## 이렇게 #를 사용해서 주석 ## 모든 file.c file...
Subjects Observable + Observer 역학을 모두 가지고 있다 PublishSubject : Subject 로 전달되는 새로운 이벤트를 구독자에게 전달 BehaviorSubject : 생성시점 시작 이벤트 지정함, Subject로 넘어오는 가장 마지막 최신 이벤트를 저장해 뒀다, 새로운 구독자에게 전달 Replay...