面试的时候被问到这个问题,用过,也懂得过,但是还是不够深刻,总结一下。
MVC,MVP和MVVM是软件比拟常常使用的三种软件架构,这三种架构的目标都是分别关注,避免将过量的逻辑全体堆积在一个类中,以android为例,在activity中既有UI的相干处置逻辑,又有数据获得逻辑,从而致使activity逻辑庞杂不单一难以保护。为了一个运用可以更好的保护和扩大,我们须要很好的区分相干层级,要不然以后将数据获得方法从数据库变成网络获得时,我们须要去修正全部activity。架构使得view和数据相互独立,我们把运用分成三个不同层级,这样我们便可以够单独测试相干层级,应用架构能够把大多数逻辑从activity中移除,便利进行单元测试。
MVC,MVP和