개발 기본사항 - 아키텍처, 활용 라이브러리에 관한 논의
MVVM - 이견 없음
Coordinator 패턴
기획안 고려 시 잦은 화면 전환 발생 가능성 있음
→ 부모 컨트롤러의 호출을 통한 화면 전환을 지양하기 위해 Coordinator 패턴 사용이 제안됨
RxSwift Input Output 패턴
Reactor Kit
DI(Dependency Injection) Container (protocol 기반)
MVVM
Coordinator 패턴
Reactor Kit
Input Output 패턴의 최대 단점 - 상태 관리가 어려움 ⇒ 코드가 깔끔하지 못했던 이유!
→ 코드 흐름 추적의 어려움
버그 발생 가능성을 낮출 수 있음 (코드 흐름의 추적이 비교적 쉬우므로)
SwiftUI에서 많이 쓰이는 TCA와 비슷한 구조
→ 추후 TCA 학습 시에 Reactor Kit에 대한 이해가 도움을 줄 수 있음 (흐름을 익히기 쉬움)
Swift Dependency