设计模式之MVC模式

 MVC英文即Model-View-Controller,就是把一个应用分为三个层:视图层、模型层、控制层:

       模型层(M)用于封装业务逻辑。
    视图层(V)也叫表示层,就是与用户实现交互的界面,通常实现数据的输入和输出功能。
    控制层(C)起到控制整个业务流程的作用。简单的说就是调用业务逻辑,然后把得到的数据转发给视图显示给用户。

                                                                                             

除了将应用程序划分为三种组件,模型 - 视图 - 控制器(MVC)设计定义它们之间的相互作用。

  • 模型(Model) “ Model ”有对数据直接访问的权力,例如对数据库的访问。“Model”不依赖“View”和“Controller”,也就是说, Model 不关心它会被如何显示或是如何被操作。但是 Model 中数据的变化一般会通过一种刷新机制被公布。为了实现这种机制,那些用于监视此 Model 的 View 必须事先在此 Model 上注册,从而,View 可以了解在数据 Model 上发生的改变。(比较:观察者模式软件设计模式))
  • 视图(View)在 View 中一般没有程序上的逻辑。为了实现 View 上的刷新功能,View 需要访问它监视的数据模型(Model),因此应该事先在被它监视的数据那里注册。
  • 控制器(Controller)它处理事件并作出响应。“事件”包括用户的行为和数据 Model 上的改变。

Android中界面部分也采用了当前比较流行的MVC框架,在Android中:

视图(View)
一般采用XML文件进行界面的描述,使用的时候可以非常方便的引入。当然,如果你对Android了解的比较的多了话,就一定可以想到在Android中也可以使用JavaScript+HTML等的方式作为 View 层,当然这里需要进行Java和JavaScript之间的通信,幸运的是,Android提供了它们之间非常方便的通信实现。
控制器(Controller)
Android的控制层的重任通常落在了众多的Activity的肩上,这句话也就暗含了不要在Activity中写代码,要通过Activity交割 Model 业务逻辑层处理,这样做的另外一个原因是Android中的Activity的响应时间是5s,如果耗时的操作放在这里,程序就很容易被回收掉。
模型(Model)
对数据库的操作、对网络等的操作都应该在 Model 里面处理,当然对业务计算等操作也是必须放在的该层的。就是应用程序中二进制的数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值