wpf2016. 10. 24. 15:37

6년동안 MVVM을 쓰면서.. 느낀점을 알아보자..


일단 MVVM이란


Model : 보통 Data를 담는 그릇정도로 생각

View :  디스플레이 사용자가 보여지는것, UI, 디자이너의 영역이라고 정의해두자.

ViewMode: View의 표현을 담당한다고 보면 된다. 보통 View에 Data를 표현해준다.  

보통 ViewModel이 변경되면 View에 자동으로 업데이트 하는 방식으로 구현된다.


MVVM을 사용했을때 장점은 머가 있었을까...

-일단 View와 비지니스 로직의 연결이다. 뷰나 비지니스 로직 둘중에 하나가 변경 되더라도 다른 부분에 영향을 미치지 않는다. 따라서 디자이너와의 협업 시스템이 정말 용의 하다. 실제로 디자이너랑 엄청 편리하게 작업을 해왔다.


-ICommand의 각종 이벤트나 익터렉션 처리를 ICommand를 호출해서 사용하는데 간단하게 이야기 하면

이벤트를 뷰모델과 연결하는 방법이다. 근데 은근히 귀찮고 짜증나서 사용하기가 싫다. 그냥 BeHind로 하고 싶다!!!!!


-Binding 사용가능

등등


장점만 있는거 같지만 단점도 많다..


가장 중요한 귀찮다!! 귀찮다!! 귀찮다!

페이지 하나 만들려고 해도 VIewModel을 따로 만들어야 하니 귀찮니즘땜에 죽겠다.

그리고 이벤트 연결 그냥 비하인드에 해도 되는데 ICommmand 쓰면 코드가 몇줄이나 늘어난다.

그리고 디버깅도 더 힘들다.

그리고 View처리가 복잡해지면 ViewModel Class가 엄청나게 커진다.


이렇게 장단점이 있기때문에 상황에 맞게 잘사용해야할꺼 같다..

무조건 MVVM을 고집하는건 좀 아닌거 같다는 생각이 든다.












Posted by 동동(이재동)