android 设计模式

MVC英文即Model-View-Controller,即把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分红三个层——模型层、视图层、控制层。android


模型
  模型(Model):就是业务流程/状态的处理以及业务规则的制定。业务流程的处理过程对其它层来讲是黑箱操做,模型接受视图请求的数据,并返回最终的处理结果。业务模型的设计能够说是MVC最主要的核心。目前流行的EJB模型就是一个典型的应用例子,它从应用技术实现的角度对模型作了进一步的划分,以便充分利用现有的组件,但它不能做为应用设计模型的框架。它仅仅告诉你按这种模型设计就能够利用某些技术组件,从而减小了技术上的困难。对一个开发者来讲,就能够专一于业务模型的设计。MVC设计模式告诉咱们,把应用的模型按必定的规则抽取出来,抽取的层次很重要,这也是判断开发人员是否优秀的设计依据。抽象与具体不能隔得太远,也不能太近。MVC并无提供模型的设计方法,而只告诉你应该组织管理这些模型,以便于模型的重构和提升重用性。咱们能够用对象编程来作比喻,MVC定义了一个顶级类,告诉它的子类你只能作这些,但无法限制你能作这些。这点对编程的开发人员很是重要。   业务模型还有一个很重要的模型那就是数据模型。数据模型主要指实体对象的数据 保存(持续化)。好比将一张订单保存到数据库,从数据库获取订单。咱们能够将这个模型单独列出,全部有关数据库的操做只限制在该模型中。数据库

 

视图
  视图(View)表明用户交互界面,对于Web应用来讲,能够归纳为HTML界面,但有可能为XHTML、XML和    MVC模式
Applet。随着应用的复杂性和规模性,界面的处理也变得具备挑战性。一个应用可能有不少不一样的视图,MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。业务流程的处理交予模型(Model)处理。好比一个订单的视图只接受来自模型的数据并显示给用户,以及将用户界面的输入数据和请求传递给控制和模型。编程

 

控制
  控制(Controller)能够理解为从用户接收请求, 将模型与视图匹配在一块儿,共同完成用户的请求。划分控制层的做用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,能够完成什么样的用户请求。控制层并不作任何的数据处理。例如,用户点击一个链接,控制层接受请求后, 并不处理业务信息,它只把用户的信息传递给模型,告诉模型作什么,选择符合要求的视图返回给用户。所以,一个模型可能对应多个视图,一个视图可能对应多个模型。   模型、视图与控制器的分离,使得一个模型能够具备多个显示视图。若是用户经过某个视图的控制器改变了模型的数据,全部其它依赖于这些数据的视图都应反映到这些变化。所以,不管什么时候发生了何种数据变化,控制器都会将变化通知全部的视图,致使显示的更新。这其实是一种模型的变化-传播机制。模型、视图、控制器三者之间的关系和各自的主要功能。设计模式

 

Java
  Java 平台企业版 (J2EE)和其余的各类框架不同,J2EE为模型对象(Model Objects)定义了一个规范。   视图(View)   在J2EE应用程序中,视图(View)可能由Java Server Page(JSP)承担。生成视图的代码则多是一个servlet的一部分,特别是在客户端服务端交互的时候。   控制器(Controller)   J2EE应用中,控制器多是一个servlet,如今通常用Struts实现。   模型(Model)   模型则是由一个实体Bean来实现。框架


Androidspa

对于android,MVC模式简单的理解能够当作设计

一、业务beanorm

二、美工视图对象

三、Activity设计开发

相关文章
相关标签/搜索