美文网首页
MVC MVP MVVM设计模式进阶

MVC MVP MVVM设计模式进阶

作者: 佼佼者Mr | 来源:发表于2020-05-22 13:34 被阅读0次

MVC:在Android中的体现

Model:模型层,面向需求模型,数据模型               Beans实体sqiteDatabase

View:视图层,面向用户渲染ui画面                         layout自定义view

Controller:控制层,面向业务逻辑具体操作             activity Network网络具体业务逻辑

致命缺陷:会造成内存泄漏。

MVP思想精髓与解耦view和model的巧妙详解

Model:模型层

View:  视图层

Presenter:控制model进行业务逻辑处理,    处理完毕后数据封装到Model,收到通知后更新view

方式:是双向的通信方式

优点:view与model层完全分离,所有的逻辑交互都在presenter,分层较为严谨。利用持有view的弱引用,当activity退出时,清空弱引用持有的view,避免内存泄露

MVVM与DataBinding

MVVM是一种设计模式

DataBinding是一种工具,既可以用在MVVM ,也可以用于MVC,MVP

Model:模型层,可以直接使用observableField,内部设置了set  get方法

View:  视图层,使用data标签,DataBinding自动生成两个layout文件供DataBinding使用,一个用于渲染布局,一个用于配置信息

ViewModal:可以单项绑定,也可以双向绑定。处理业务逻辑

DataBinding原理:

编译时绑定布局与对象,扫描所有layout布局,如果有data标签,生成两份layout文件,一份用于渲染布局,添加tag标签,另一份用于配置数据,与model里面的数据相绑定。

通过apt生成class文件,通过activity获得顶层view,加载渲染布局,生成一个全局的runnable,监听每一个view,开设一个管道监听model,当model发生变化时,改变view

DataBinding的使用消耗大量的内存,主要是有三方面导致的

1.获取layout里面的view,存入object的数组中,绑定控件的时候再从数组中获取view

2.在全局变量中,有一个全局的runnable一直在监听view,一个activity对应一个runnable,项目越大,内存耗损越大

3.开设一个looper的管道监听model,当model发生改变时,改变view

相关文章

  • iOS 设计模式 一

    设计模式随记 系统架构模式 1. MVC - MVVM - MVP - MVVM、MVC协调版 MVC :...

  • vue笔记

    设计模式(MVC/MVP/MVVM) MVC(Model View Controller): 数据模型(Model...

  • iOS开发小帖:设计模式

    设计模式精彩文章 iOS 架构模式--解密 MVC,MVP,MVVM以及VIPER架构 MVP设计模式 基于面向协...

  • iOS-面试题6-架构

    目录: MVC-Apple MVC-变种 MVP MVVM 分层设计 架构与设计模式的区别 一. MVC-Appl...

  • iOS-MVC,MVP,MVVM及VIPER简介

    iOS中MVC,MVP,MVVM及VIPER设计模式介绍的文章有很多,开发过程MVC最常见的模式,MVVM也经常被...

  • MVC MVP MVVM设计模式进阶

    MVC:在Android中的体现 Model:模型层,面向需求模型,数据模型 Beans实体sqite...

  • Android 中 MVC、MVP 和 MVVM 对比

    一、前言: MVC、MVP和MVVM是常见的三种架构设计模式,当前MVP和MVVM的使用相对比较广泛,当然MVC也...

  • Android中MVP设计框架浅析

    一、MVP设计模式简介 目前Android设计成熟的框架有MVC,MVP和MVVM,MVP是由MCV演变而来,MV...

  • iOS-19 MVC和MVVM

    1 iOS MVC、MVVM、MVP详解 - 简书 2 浅谈 MVC、MVP 和 MVVM 架构模式 - Coco...

  • 设计模式演变过程

    基本设计模式之MVC模式 基本设计模式之MVP模式 基本设计模式之MVVM模式 SPA和MPA SPA:单页面应用...

网友评论

      本文标题:MVC MVP MVVM设计模式进阶

      本文链接:https://www.haomeiwen.com/subject/mhobohtx.html