ViewModel 공유 문제 - siwonkim0/ios-project-manager GitHub Wiki
ViewModel이 여러 ViewController에게 공유되어도 될까?
원래는 할일 목록을 가진 ListVC와 할일 상세화면을 가진 AddVC, EditVC는 모두 하나의 뷰모델을 공유하고 있도록 구현하였습니다. 그 이유는 세 뷰컨 모두 보여주는 데이터가 크게 다르지 않다고 생각해서였습니다.
그러나, 뷰모델이 공유되면 안되는 이유로는 예상치 못한 부수효과가 생길수도 있고, 나중에 코드를 보는 사람이 뷰모델이 어느 뷰컨에 해당하는지 혼란이 올 수도 있다고 생각했습니다.
각 VC는 하나의 ViewModel만 가져야 한다는 피드백을 받고 ListVC, AddDetailVC, EditDetailVC가 각각 ListVM, AddDetailVM, EditDetailVM을 가지도록 수정해주었습니다.