728x90 ๐ iOS/RxSwift6 [iOS/RxSwift] RxDataSource - UITableView, UICollectionView RxSwift ์์ DataSource ๋ฅผ ์ค์ ํ๋ ๋ฐฉ๋ฒ์ ์ ๋ฆฌํด๋ณด๋ ค๊ณ ํฉ๋๋ค! UIKit ์ UITableView, UICollectionView ๋ฅผ ์ด์ฉํ ๋์๋ ๊ฐ ๋ฆฌ์คํธ์ ๋ํ ๋ฐ์ดํฐ๋ฅผ ํํํ๊ธฐ ์ํด data source ๋ฅผ ์ง์ ํด์ค์ผ ํ๋๋ฐ์. ๊ธฐ๋ณธ์ ์ผ๋ก๋ data source ํ๋กํ ์ฝ์ ์ฑํํด, ๋ฉ์๋๋ฅผ ๊ตฌํํด ๋ฐ์ดํฐ๋ฅผ ํํํฉ๋๋ค. RxSwift ์ RxDataSource ์์๋ data source ๋ฉ์๋๋ฅผ ์ง์ ๊ตฌํํ์ง ์๊ณ ์ฝ๊ฒ ์ฌ์ฉํ ์ ์๋๋ก ์คํผ๋ ์ดํฐ๋ฅผ ์ ๊ณตํฉ๋๋ค. 1. UIKit ์์ data source ๋ฅผ ์ค์ ํ๋ ๋ฐฉ๋ฒ 2. RxSwift ์์ data source ๋ฅผ ์ค์ ํ๋ ๋ฐฉ๋ฒ 3. RxDataSource ๋ฅผ ์ด์ฉํด data source ๋ฅผ ์ค์ ํ๋ ๋ฐฉ๋ฒ 1. UIKit .. 2021. 10. 17. [iOS] MVVM & RxSwift ์คํฐ๋ W2 - TableView bind items, modelSelected, cell prepareForReuse [iOS] MVVM & RxSwift ์คํฐ๋ W2 - TableView ๋ง๋ค์ด๋ณด๊ธฐ iamchiwon/RxSwift_In_4_Hours RxSwift, 4์๊ฐ ์์ ๋น ๋ฅด๊ฒ ์ตํ ์ค๋ฌด์ ์ฌ์ฉํ๊ธฐ. Contribute to iamchiwon/RxSwift_In_4_Hours development by creating an account on GitHub. github.com ๊ณฐํ๊น๋ ๊ฐ์ ์์์.. jellysong.tistory.com ๊ณฐํ๊น๋ RxSwift ๊ฐ์ ์ค step1 ์ MVVM + TableView ๋ก ๋ฐ๊ฟ๋ณธ ์์ ํฌ์คํ ์์ View Controller ์์์ ๋ฐ์ดํฐ๋ฐ์ธ๋ฉ, TableViewCell ์์ ์ด๋ฏธ์ง ์ฒ๋ฆฌ๋ฅผ ๋ฐ๋ก ์ ๋ฆฌํ ๊ธ์ ๋๋ค! 1 ListViewController / 2 Detai.. 2021. 7. 15. [iOS] MVVM & RxSwift ์คํฐ๋ W2 - TableView ๋ง๋ค์ด๋ณด๊ธฐ iamchiwon/RxSwift_In_4_Hours RxSwift, 4์๊ฐ ์์ ๋น ๋ฅด๊ฒ ์ตํ ์ค๋ฌด์ ์ฌ์ฉํ๊ธฐ. Contribute to iamchiwon/RxSwift_In_4_Hours development by creating an account on GitHub. github.com ๊ณฐํ๊น๋ ๊ฐ์ ์์์ ์ฝ๋๋ step1 ~ 4 ๊น์ง ์๋๋ฐ์. step1 ์ JSON ํ์ผ์ ๋ค์ด๋ก๋ํ๋ ์์ ์ ๋น๋๊ธฐ๋ก ์ฒ๋ฆฌํ๊ณ ์ด๋ฅผ editView ์ ๋์์ฃผ๋ ๊ฒ์ด๊ณ . step2 ๋ step1 ๊ณผ ๊ฐ์ JSON ํ์ผ์ tableView ๋ก ๋ณด์ฌ์ฃผ๋ ์ฝ๋์์. ๊ฐ์์์ step2 ๋ ํจ์คํ์ ์ ์ด๋ฅผ ์ฐ์ตํด๋ดค์ต๋๋น ๐ง ๐ MVVM + RxSwift TableView ์์ step2 ์์ฑ ์ฝ๋์์๋ ํ์ด๋จธ์ LOAD ๋ฒ.. 2021. 7. 15. [iOS] RxSwift - Subject vs Observable ๊ณฐํ๊น๋ ๊ฐ์ [3๊ต์] RxSwift ํ์ฉ๋ฒ์ ๋ํ๊ธฐ์ ํด๋นํ๋ ๋ด์ฉ์ ๋๋ค! ๐ก RxSwift - Observable vs Subject Observable ์ ์ด๋ค ๋ฐ์ดํฐ๋ฅผ ๋ด๋ณด๋ด์ผํ ์ง ๋ฏธ๋ฆฌ ์ ํด์ง ํํ์ ์คํธ๋ฆผ์ด๋ค. create ํ๋ ์์ ๋ถํฐ ๊ฐ์ด ์ ํด์ ธ์๊ณ , ์ค๊ฐ์ ๋ฐ์ดํฐ ๊ฐ์ ๋ณ๊ฒฝํ ์ ์๋ค. ๋ฒํผ ์กฐ์์ผ๋ก ๋ฐ์ดํฐ ๊ฐ์ ๋ณ๊ฒฝํด์ผํ๋ ๋ฑ์ ์ํฉ์์๋ Observable ๋์ Subject ๋ฅผ ์ด์ฉํ๋ฉด ๋๋ค. Subject ๋ Observable ์ธ๋ถ์์ ๋ฐ์ดํฐ๋ฅผ ๋ฃ์ด์ค ์๋ ์๊ณ , ๊ตฌ๋ ํ ์๋ ์๋ ์๋ฐฉํฅ์ฑ์ ๊ฐ์ง ํ์ ์ด๋ค! Subject ๋ ์ผ๋ฐ Observable ์ฒ๋ผ subscribe ํ์ฌ event ๋ฅผ ์ ๋ฌ๋ฐ์ ์ ์์๊ณผ ๋๋ถ์ด, Subject ์ธ๋ถ์์ onNext, onCompleted,.. 2021. 7. 14. [iOS] RxSwift - Observables ์์ฑ๊ณผ ๊ตฌ๋ , ์๋ช ์ฃผ๊ธฐ, operator ๐ก ReacitveX - Observable ReactiveX ์์ Observer ๋ Observable ์ subscribe ํ๋ค. observer ๋ Observable ์ด ๋ฐฉ์ถํ๋ ์์ดํ (๋จ์ผ ํน์ ์ํ์ค)์ ์๋ตํ๋ค. ์ด๋ฅผ ํตํด ๋์์ฑ(concurrency) ์ฐ์ฐ์ด ๊ฐ๋ฅํ๋ค. Observable ์ด ๊ฐ์ฒด๋ฅผ ๋ฐฉ์ถํ ๋๊น์ง ๊ธฐ๋ค๋ฆด ํ์ ์์ด, ๊ฐ์ฒด๊ฐ ๋ฐฉ์ถ๋๋ฉด ๊ทธ ์์ ์ ๊ฐ์ํ๋ ๊ด์ฐฐ์๋ฅผ observer ๋ด์ ๋๊ณ , ๊ทธ๋ฅผ ํตํด ์๋ฆผ์ ๋ฐ๋๋ค. โ๏ธ Observer ์์ฑ & ๊ตฌ๋ ๋น๋๊ธฐ ๋ชจ๋ธ์์๋ ์๋์ ๊ฐ์ ํ๋ฆ๋๋ก ์ฝ๋๊ฐ ์คํ๋๋ค. async method ํธ์ถ๋ก ๊ฒฐ๊ณผ๋ฅผ ๋ฆฌํด๋ฐ๊ณ , ํ์ํ ๋์์ ์ฒ๋ฆฌํ๋ method ๋ฅผ ์ ์ํ๋ค. * Observer ์ ์ผ๋ถ Observable ๋ก ๋น๋๊ธฐ ํธ์ถ์ ์ .. 2021. 7. 11. [iOS] MVVM & RxSwift ์คํฐ๋ W1 - Observable ์๋ช ์ฃผ๊ธฐ์ ์ฐ๋ ๋๊ด๋ฆฌ iamchiwon/RxSwift_In_4_Hours RxSwift, 4์๊ฐ ์์ ๋น ๋ฅด๊ฒ ์ตํ ์ค๋ฌด์ ์ฌ์ฉํ๊ธฐ. Contribute to iamchiwon/RxSwift_In_4_Hours development by creating an account on GitHub. github.com ๊ณฐํ๊น๋ ๊ฐ์ ์์์ ๋ณด๊ณ , ์ ๋ฆฌํ ๋ด์ฉ์ ๋๋ค! [1๊ต์] RxSwift ๋ฅผ ์ด์ฉํ ๋น๋๊ธฐ ํ๋ก๊ทธ๋๋ฐ ๐ก RxSwift ๋ ๋น๋๊ธฐ ์์ ์ ๊ฒฐ๊ณผ๋ฅผ Completion closure ๊ฐ ์๋, ํจ์์ return ๊ฐ์ผ๋ก ์ ๋ฌํ๊ธฐ ์ํ ์ ํธ๋ฆฌํฐ ์ค ํ๋์ด๋ค! ๐ ๋น๋๊ธฐ ํ๋ก๊ทธ๋๋ฐ, RxSwift ๊ฐ ์ ํ์ํ ๊น? ๋คํธ์ํฌ ์์ ๋ฑ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์์ค๋ ๋ฐ ์๊ฐ์ด ๊ฑธ๋ฆฌ๋ ์์ ์ ๊ฒฝ์ฐ, ๋น๋๊ธฐ ํ๋ก๊ทธ๋๋ฐ์ด ํ์ํ๋ค. ๋๊ธฐ(sync).. 2021. 7. 11. ์ด์ 1 ๋ค์ 728x90