VIP
- View Controller, Interactor, Presenter
- 단방향 제어 흐름
💡VIPER: 양방향으로 로직이 순환하기 때문에 순환참조에 의한 메모리 누수 발생
- VIP cycle > interactor에 있는 클로저 기반 비동기 메소드들이 주기적으로 업데이트 제공
💡MVVM 의 Reactiveness 문제해결
Data Flow
1. View 이벤트 > Interactor 메소드 실행 > 비즈니스로직 실행
2. Interactor : 비즈니스 로직 처리 > Presenter 에게 결과 전송
3. Presenter : Interactor 에서 받은 결과에 대한 UI 처리
💡VIPER : 액션에 대한 비즈니스로직을 Presenter 를 통해 Interactor 에게 전달
VIP 주기
- Use Case 트리거 (ex. viewDidLoad())
- VC : Interactor 호출
- Interactor : 비즈니스 로직 수행, Presenter 호출
- Presenter : VC 호출
- VC : 화면에 보여줌
출처
https://ios-development.tistory.com/340
https://velog.io/@ssionii/Clean-Swift-a.k.a-VIP-에-대해-아라보자