[2교시] RxSwift 활용하기 - 쓰레드의 활용과 메모리 관리 1. Merge: Observable 여러개를 묶어서 하나의 Observable로 만들어줌. 2. Zip: 위 아래 데이터가 하나씩 생성되면 그것들을 쌍으로 하나 만들어서 내려줌. 3. CombineLatest: 쌍이 하나 없으면 못내려가는 zip과 달리 가장 최근에 나온 것과 쌍으로 만들어줌. // zip: Observable들을 합쳐서 처리 let jsonObservable = downloadJson(MEMBER_LIST_URL) let helloObservable = Observable.just("hello world") _ = Observable.zip(jsonObservable, helloObservable) { $1 + "\n"..
유튜브 곰튀김님 강의를 토대로 RxSwift의 기초를 정리해보았습니다. 개인 공부 목적으로 정리한 내용이라 부족한 부분이 있거나 오류가 있을 수도 있으니 언제든 알려주시면 정정하도록 하겠습니다. [1교시] 개념잡기 - RxSwift를 사용한 비동기 프로그래밍 RxSwift 사용 이유 중 하나로는 비동기적으로 생기는 결과값을 리턴값으로 전달하기 위해서이다. (나중에 생기는 데이터를 리턴값으로 전달) 기존 : 비동기로 생성되는 데이터를 처리하기 위해 completion 등을 만들어 전달했었음. 그러나 completion이 아닌 return 값으로 전달을 해주고 싶었음. class Observable/*나중에생기는데이터*/ { //나중에 생기는 데이터 private let task: (@escaping (T)..
최근에 컬렉션 뷰를 활용한 무한 스크롤링 배너를 구현하다가 문득 이 UICollectionView의 기본 개념이 부족하다는 생각이 들었습니다. 여태까지는 별 문제없이 써왔지만 제대로 알고 쓰는 것이 추후 뷰 구현 시 설계에 대해 고민하는 시간을 많이 줄여줄 것으로 생각되어 간단하게라도 기초를 정리해보고자 합니다. UICollectionView는 변경이 가능한 레이아웃을 이용하여 데이터를 view 상에 보여줍니다. 컬렉션 뷰의 레이아웃은 단순한 행, 열 그 이상의 기능을 수행하는데 각 셀의 레이아웃을 동적으로 변경할 수도 있습니다. 컬렉션 뷰는 모두 사용자에게 정렬 된 데이터를 제공한다는 점에서 테이블 뷰와 다소 관련이 있습니다. 테이블 뷰의 구현은 인덱스 경로, 셀 및 뷰 재활용 사용에있어 표준 컬렉션 ..