Android与MVC设计模式

概念

Android应用是基于MVC(Model-View-Controller)的架构模式进行设计的。Android应用中的任何对象,都属于模型对象,控制器对象,视图对象三类对象中的任何一种:

  • 模型对象

    模型对象存储着应用的数据和业务逻辑。模型类通常用来映射与应用相关的一些事物。模型对象不关心用户界面,它存在的唯一目的就是存储和管理应用数据。应用的全部模型对象组成了模型层。

    在Android的世界里,模型类一般是开发者自定义的类,对应着应用业务相关的事物。

  • 视图对象

    视图对象知道如何在屏幕上绘制自己以及如何响应用户的输入,如用户的touch事件等。一个简单的经验法则是,凡是能够在屏幕上看见的对象,都是视图对象。应用的全部视图对象组成了视图层。

    Android应用里,视图对象可能是Button,TextView等View类,也可能是用户自定义的各种View类,还可能是LinearLayout,RelativeLayout,RecyclerView等各种ViewGroup类。

  • 控制器对象

    控制器对象含有应用的逻辑单元,是视图对象与模型对象的联系纽带。控制对象响应视图对象触发的各类事件,此外还管理着模型对象和视图对象之间的数据流动。注意,模型对象与视图对象不直接交互,控制器对象作为它们之间的联系纽带,接收对象(可能是V或M)发送的消息,然后向其它对象(可能是M或V)发送操作指令。

    在Android的世界里,控制器对象通常是Activity,Fragment,Service中的一个子类。

这里写图片描述

使用MVC设计模式的好处

  • 以类来组织代码有助于从整体视角设计和理解应用,这样可以按类,而不是按变量和方法去思考和设计开发的问题

  • 把对象按MVC三层进行分类组织,也有助于我们设计和理解应用。这样可以按层次,而不是按一个个类来考虑设计开发。如下图的事例,非常有层次感。

这里写图片描述

  • 使用MVC模式可以让类的复用更加容易。相比功能多而全的类,功能单一的专用类更加有利于代码复用。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值