안녕하세요. 이번에는 RxSwift를 통한 MVVM 구현 과정에서 사용하면 좋은 Input Output 패턴에 대해 포스팅하겠습니다. Input Output 패턴을 사용하지 않아도 MVVM 구현이 안 되는 것은 아니지만 사용해본 결과 뷰에서 발생하는 이벤트는 Input 구조체에서, 뷰모델에서 비즈니스 로직을 통해 처리하고 가공한 데이터를 전달받는 부분은 Output 구조체에 작성되어 있어 굳이 코드를 다 읽어보지 않아도 한눈에 흐름을 알 수 있고, 협업할 때에도 다른 사람이 작성한 화면의 기능을 파악하기 쉽다는 장점이 있습니다. 간단한 기능을 통해 Input Output 패턴을 이용하여 MVVM을 작성해 보겠습니다. 아래는 github 사용자리스트 api를 이용해 사용자 목록을 받아와서 테이블에 보여주는..
JWT 샘플 앱을 MVC 패턴으로 만들었는데, rxSwift 없이 MVVM을 적용하면서 배운 것들을 블로그에 정리해보려 합니다. Apple's MVC 좌측이 Classic MVC 우측이 apple's MVC인데, iOS 앱 개발 관점에서는 ViewController가 View의 LifeCycle과 깊게 연관되어 있어 View와 Controller의 책임을 나누기가 어렵습니다. 그래서 우측과 같은 애플만의 MVC 패턴이 나오게 되었는데 이 경우 ViewController의 사이즈가 너무 커져서 재사용성이 떨어지고 테스트 관점에서 볼 때도 모델이야 따로 떨어져 있으니 테스트가 된다고 쳐도 View와 Controller를 각각 따로 테스트하기가 어려워집니다. 익숙한 패턴이라 개발 속도도 빠르고 새로운 개발자가..
- Total
- Today
- Yesterday
- MVVM패턴
- ios 캐시메모리
- rxswift 없이
- ios memory
- NSCache
- 앱개발 디자인패턴
- rxswift안쓰고
- ios 이미지캐싱
- ios image caching
- ios 디자인패턴
- inputoutput패턴
- swift mvvm
- ios expectation
- ios 캐시
- 프로퍼티래퍼
- 비동기 유닛테스트
- ios cache
- ios 유닛테스트
- swift cache
- SWIFT
- swift 캐싱
- 아키텍처패턴
- UserDefaultKey
- @propertyWrapper
- UserDefaults
- api호출 unittest
- 연산프로퍼티
- ios 패턴
- UserDefault
- wrappedValue
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |