美文网首页
框架模式之 MVC

框架模式之 MVC

作者: Kevin_小飞象 | 来源:发表于2019-06-18 16:50 被阅读0次

    简介

    MVC 全称是 Model - View - Controller,是模型(model)-视图(view)-控制器(controller)的缩写。MVC 是一种框架模式而非设计模式,GOF 把 MVC 看作是 3 种设计模式:观察者模式、策略模式与组合模式的合体,而核心是观察者模式。简而言之,框架是大智慧,用来对软件设计进行分工;设计模式是小技巧,对具体问题提出解决方案,以提高代码复用率,降低耦合度。

    设计图

    mvc.png

    优点

    由于 MVC 很好的分离了视图层和业务层,所以它具有以下优点:

    • 耦合性低
    • 开发速度快
    • 可维护性高
    • 易于理解

    缺点

    • 由于 MVC 的设计思想是从 Model 出发,而没有考虑到 View 端的复杂性,这样导致的问题是 Model 难以符合复杂多变的 View 端变化。导致 Model 的作用很小,而很多 View 层的职责也转移到了 Controller 层。Controller 变得臃肿不堪。
    • 测试困难

    关系

    gx.png.png
    • 视图层(View)
      对应于 xml 布局文件和 java 代码动态 view 部分
    • 控制层(Controller)
      MVC 中 Android 的控制层是由 Activity 来承担的,Activity 本来主要是作为初始化页面,展示数据的操作,但是因为 XML 视图功能太弱,所以 Activity 既要负责视图的显示又要加入控制逻辑,承担的功能过多。
    • 模型层(Model)
      针对业务模型,建立的数据结构和相关的类,它主要负责网络请求,数据库处理,I/O 的操作。

    小结

    • 具有一定的分层,Model 彻底解耦,Controller 和 View 并没有解耦;
    • 层与层之间的交互尽量使用回调或者去使用消息机制去完成,尽量避免直接持有;
    • Controller 和 View 在 Android 中无法做到彻底分离,但在代码逻辑层面一定要分清;
      业务逻辑被放置在 Model 层,能够更好的复用和修改增加业务。

    相关文章

      网友评论

          本文标题:框架模式之 MVC

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