美文网首页
设计模式

设计模式

作者: 愤怒小鸟飞呀飞 | 来源:发表于2018-08-22 22:04 被阅读0次

网上流传 MVC苹果 MVVM MVP设计模式 以及最新更新出来的VIPER

先不讨论设计模式,先聊聊一些读后感
整个APP客户端 可分为
展示层(UI)
控制层(数据和UI之间的关系)
数据层(Model)
备注:model层 (不赞同网上仅仅针对一个实体对象的说法,我理解的数据层包含 网络请求、数据库处理、以及图片处理、字符高度计算等内容)

各个业务模块横向分层 ,model纵向分层
实际项目中,把model层分为业务层(businessLayer)、数据层(数据库,网络,文件写入)、组件层(各种工具类)

MVC设计:


MVC.png

controller 持有view与model,业务之间调用关系明确

MVVM.png
MVVM 将View和ViewController作为一个整体,把ViewController中ViewModel的功能抽离出来,viewModel,不过VC仍然持有ViewModel ViewModel持有Model,增加代码的可测试性 注意ViewModel不持有 View, 取而代之的是双向绑定,但在实际应用中,双向绑定并不利于开发,暂时了解吧
参考链接:https://blog.csdn.net/dangbai01_/article/details/80534837
https://www.cnblogs.com/iammackong/articles/3312565.html
代码链家:https://github.com/canwhite/QCMVVMTest image.png VIPER.png

MVVM变种 viewModel细化 为视图状态和 业务层的分离

关于MVC 平常项目中用的跟苹果的思想并不完全一致,viewController代替了model绝大多数的功能,所以后来出了MV(x)种种设计模式来解耦合,MVP,MVVM具体没有特别明白,反而更喜欢VIPER,其实说到底还是多model层的细化,对Model与View之间的 中间桥梁 进行明确的功能定义

参考链接

http://ios.jobbole.com/83727
https://zuikyo.github.io/2017/07/21/iOS%20VIPER%E6%9E%B6%E6%9E%84%E5%AE%9E%E8%B7%B5(%E4%B8%80)%EF%BC%9A%E4%BB%8EMVC%E5%88%B0MVVM%E5%88%B0VIPER/
https://blog.csdn.net/phpkernel/article/details/7332227

相关文章

  • 设计模式

    常用的设计模式有,单例设计模式、观察者设计模式、工厂设计模式、装饰设计模式、代理设计模式,模板设计模式等等。 单例...

  • 设计模式笔记汇总

    目录 设计原则 “依赖倒置”原则 未完待续... 设计模式 设计模式——策略模式 设计模式——装饰者模式 设计模式...

  • 设计模式

    《C#设计模式》 《C#设计模式》-设计模式概述 《C#设计模式》-面向对象设计原则 《C#设计模式》-单例模式 ...

  • 浅谈JS的一些设计模式

    @(书籍阅读)[JavaScript, 设计模式] 常见设计模式 设计模式简介 设计模式概念解读 设计模式的发展与...

  • 前端设计模式

    JS设计模式一:工厂模式jS设计模式二:单例模式JS设计模式三:模块模式JS设计模式四:代理模式JS设计模式五:职...

  • 设计模式之工厂模式

    设计模式之工厂模式 标签(空格分隔): 设计模式 工厂模式 设计模式的感念 设计模式的应用 工厂设计模式的产生 工...

  • JavaJavascript基础进阶(十七)JS中常用的设计模式

    单利设计模式、构造原型设计模式、发布订阅设计模式、promise设计模式 单利模式 构造原型设计模式 最贴近OOP...

  • 设计模式 - 目录

    设计模式01 - 单例模式 设计模式02 - 工厂模式 设计模式03 - 建造者模式 设计模式04 - 适配器模式...

  • 第1章 设计模式概述

    一、设计模式的概念 二、设计模式的历史 三、设计模式的要素 四、设计模式的分类 ■ 创建型设计模式 ■ 结构型设计...

  • iOS设计模式(3)适配器模式

    设计模式系列文章 《iOS设计模式(1)简单工厂模式》《iOS设计模式(2)工厂模式》《iOS设计模式(4)抽象工...

网友评论

      本文标题:设计模式

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