[swift] VIPER 아키텍처의 Presenter를 Swift로 구현하는 방법은 무엇인가?
import Foundation
protocol YourViewProtocol: AnyObject {
func updateUI(with data: YourViewModel)
}
protocol YourPresenterProtocol: AnyObject {
func viewDidLoad()
}
class YourPresenter: YourPresenterProtocol {
weak var view: YourViewProtocol?
init(view: YourViewProtocol) {
self.view = view
}
func viewDidLoad() {
// 비즈니스 로직을 수행하고 View에게 UI 업데이트를 요청
let data = // 비즈니스 로직에서 가져온 데이터
view?.updateUI(with: data)
}
}
struct YourViewModel {
// View에서 사용하는 데이터 구조
}
위의 코드는 VIPER 아키텍처의 Presenter를 구현하는 간단한 예제입니다. Presenter는 View 프로토콜을 준수하고, View 프로토콜을 통해 UI를 업데이트하는 방식으로 동작합니다. 이 예제는 VIPER 아키텍처의 Presenter를 Swift로 구현하는 기본적인 방법을 보여줍니다.