低耦合
視圖(view)可以獨立于Model變化和修改,一個ViewModel可以綁定到不同的“View”上,當View變化的時候Model可以不變,當Model變化的時候View也可以不變。
可重用性
你可以把一些視圖邏輯放在一個ViewModel里面,讓很多View重用這段視圖邏輯。
獨立開發(fā)
開發(fā)人員可以專注于業(yè)務邏輯和數(shù)據(jù)的開發(fā)(ViewModel),設計人員可以專注于頁面設計。
可測試
界面素來是比較難于測試的,而現(xiàn)在測試可以針對ViewModel來寫。