미분류
SwiftUI View에 ViewModel 여러 개 가지기
일반적인 경우로 생각할 수 있는지는 모르겠지만, 코딩을 하다보니, 뷰 하나에 기능에 따라 ViewModel을 분기시켜서 연동되게 하고 싶은 경우가 생겼습니다. 보통 스위프트에서 이러한 문제를 풀기 위해서는 Protocol을 참조하게 하거나, Subclassing으로 해결할 수 있을 것 같습니다. 상황에 따라 다르겠지만, Subclassing의 경우에는 기본 구현을 통해 변화를 주기는 편리하지만, Overriding으로 코드가 수정되고, 기능이 추가될 수록 파악하기 어려운 점이 있어서 Protocol을 이용해서 해결해보려고 했습니다. Protocol의 경우에는 인터페이스로 정의한 것만 구현해주면 다른 클래스와의 상호 작용 문제가 없어서 장기적으로 볼 때, 더 깔끔하다고 생각합니다. Protocol을 이용해 구현 더보기…