| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- NewsApp
- MVVM
- cocoapods
- 동기(Sync)
- MapKit
- IAMPopup
- RxSwift
- Traits
- 직렬(Serial)
- ios
- 비동기(Async)
- popupView
- Segmented Control
- swift
- Transforming Operators
- Control Event
- Swift Package Manager
- Dispatch Queue
- NSCache
- Multiple Cell Type
- 동시(Concurrent)
- OpenSource
- flatMap
- SPM
- WeatherAPP
- Library
- pagination
- 라이선스 저작권
- Rxcocoa
- 의존성 관리 도구
- Today
- Total
목록NewsApp (2)
IAM iOS
What we will be Building? MVVM 패턴을 적용하여, News API 네트워크 요청 구현 (이전 GoodNews는 MVC 패턴) MVVM View와 Model을 분리 기존의 View는 단순히 UI를 표시하기 위한 로직만을 담당하고, 그 외에는 메서드 호출 정도만 있는 것이 이상적 ViewModel은 기존의 UIKit을 import 할 필요 없이 데이터 update 및 View 요소를 업데이트한다. View - Model - ViewModel 모두 독립적으로 테스트가 가능하다. Model 데이터 구조를 정의하고 ViewModel에게 결과를 알려준다. Model은 View와 이어지지 않는다. struct ArticleResponse: Decodable { let articles: [Art..
What we will be Building? 변환 연산자(Transforming Operators)를 사용하여, News API 네트워크 요청 구현 API 호출 Observable이 url 값을 방출 (Just, From 상관없음) Observable이 방출하는 url을 새로운 Observable로 변환 변환된 결과값을 Mapping하여 디코딩 (요청한 data를 가져와서 Article을 반환) 최종적으로 하나의 Observable로 합쳐지고, 모든 항목이 Observable을 통해 방출 flatMap을 사용하여 url을 얻고, 여기서 반환할 것은 Observable let disposeBag = DisposeBag() private var articles = [Article]() private fun..