免费学习系统深入学习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
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的主要内容,如果未能解决你的问题,请参考以下文章