免费学习系统深入学习MVC,MVP,MVVM

Posted 菜鸟窝官网

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了免费学习系统深入学习MVC,MVP,MVVM相关的知识,希望对你有一定的参考价值。

课程基本介绍

本课程通过案例和项目两个章节来深度学习MVC,MVP,MVVM(包括Data-Binding),

第一章节分别用案例讲解了MVC,MVP,MVVM的原理和基本用法第二章节把MVC,MVP,MVVM 应用到项目中,是得学习更加深入和实用

MVC,MVP,MVVP 的项目运行效果

3个的运行效果都是一样的,只是采用的架构不一样而已,我们就用其中一个来演示

【免费学习】系统深入学习MVC,MVP,MVVM

购买

【免费学习】系统深入学习MVC,MVP,MVVM

【免费学习】系统深入学习MVC,MVP,MVVM


下面介绍下MVC,MVP,MVVM的基本概念,实战和原来部分请在课程中学习

MVC

MVC全名 Model View Controller

模型(model)-视图(view)-控制器(controller)M是指业务模型V是指用户界面C则是控制器

1.其中 View 层其实就是程序的 UI 界面,用于向用户展示数据以及接收用户的输入2.Model 层就是 JavaBean 实体类,用于保存实例数据3.Controller 控制器用于更新 UI 界面和数据实例

MVP

MVP是一种经典的模式M代表ModelV代表ViewP则是Presenter(Model和View之间的桥梁)

MVP模式的核心思想把Activity中的UI逻辑抽象成View接口,把业务逻辑抽象成Presenter接口,Model类还是原来的Model类

好处1.分离视图逻辑和业务逻辑,降低耦合

2.Activity只处理生命周期的任务,代码简洁

3.视图逻辑和业务逻辑抽象到了View和Presenter中,提高阅读性

4.Presenter被抽象成接口,可以有多种具体的实现

5.业务逻辑在Presenter中,避免后台线程引用Activity导致内存泄漏

MVVM

MVVM模式包含三个部分

Model代表基本的业务逻辑View显示内容ViewModel将前面两者联系在一起

MVVM模式中,一个ViewModel和一个View匹配,它没有MVP中的IView接口,而是完全的和View绑定,所有View中的修改变化,都会自动更新到ViewModel中,同时

Data-Binding

2015年I/O大会上谷歌介绍了一个非常NB的工具,该工具可以将View和一个对象的field绑定,当field更新的时候,framework将收到通知,然后View自动更新

Data Binding官方原生支持MVVM模型可以让我们在不改变现有代码的框架下,非常容易的使用这些新特性


以上是关于免费学习系统深入学习MVC,MVP,MVVM的主要内容,如果未能解决你的问题,请参考以下文章

MVC, MVP, MVVM比较以及区别

MVC,MVP和MVVM之间的优缺点

MVC,MVP和MVVM之间的优缺点

Android开发中的MVP架构

MVC / MVP / MVVM 到底是啥?

认清Android框架 MVC,MVP和MVVM