로딩
요청 처리 중입니다...

MVVM 규칙을 느슨하게 가져가기로 한 결정

 MVVM 규칙을 느슨하게 가져가기로 한 결정

한동안은 MVVM 규칙을 꽤 엄격하게 지키려고 했다. View는 최대한 얇게 로직은 전부 ViewModel로 이벤트는 Command로 상태는 바인딩으로만 전달 지금도 이 방향이 틀렸다고 생각하지는 않는다.

다만, 모든 화면에 이 규칙을 그대로 적용하려던 시기가 문제였다. MVVM을 잘 쓰고 있다는 확신이 있었던 때 MVVM 구조를 어느 정도 익히고 나면 이런 감각이 생긴다.

“이제 MVVM답게 짜고 있다” 코드를 보면 그럴듯했다. View에는 로직이 없고 ViewModel은 깔끔하고 테스트도 가능해 보이고 문제는, 시간이 지나면서였다.

규칙을 지키는데 코드가 불편해지기 시작했다 어느 순간부터 이런 장면이 자주 나왔다. 단순한 UI 동작인데 Command → ViewModel → 상태 변경 → 바인딩 흐름을 한 바퀴 다 돈다 화면 로직이 ViewModel에 몰려 읽기가 더 어려워진다 디버깅할 때 “이 동작이 왜 발생했지?”

를 따라가기 힘들어진다 규칙은 잘 지켰는데 코드를 다루는 감각은...