理解MVC模式

MVC是Model-View-Controller的简称,即模型-视图-控制器。

MVC是一种设计模式,它强制性地将应用程序的输入、处理、输出流程按照模型、视图、控制器的方式进行分类,并被分成3层:

  模型层、视图层、控制层。

  1.视图

    • 代表用户交互界面。
    • 视图向用户显示相关的数据,并能接收用户输入的数据,但是它并不进行任何实际的业务处理。
    • 视图可以向模型查询业务状态,但不能改变模型。
    • 视图还能接收模型发出的数据更新事件,从而对用户界面进行同步更新。

  2.模型

    • 模型是业务流程/状态的处理以及业务规则的制定。
    • 业务流程的处理过程对其他层来说是黑箱操作,模型接收视图请求的数据并返回最终的处理结果。
    • 一个模型能为多个视图提供数据。由于同一个模型可以被多个视图重用,所以提高了可重用性。
    • 业务模型的设计是MVC最主要的核心。

  3.控制器

    • 控制器可以理解为从用户接收请求,将模型与视图匹配在一起,共同完成用户的请求。
    • 控制层不做任何数据处理。
    • 比如:用户单击一个链接,控制层接收请求后,并不处理业务信息,而只将用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。
    • 一个模型可能对应多个视图,一个视图也可能对应多个模型。

  MVC的优点

    • 多个视图能共享一个模型。
    • 在MVC设计模式中,模型响应用户请求并返回响应数据,视图负责格式化数据并将它们呈现给用户,业务逻辑和表示层分离,同一个模型可以被不同的视图重用,大大提高了代码的可重用性。
    • 模型是自包含的,与控制器和视图保持相对独立,所以可以方便地改变应用程序的数据层和业务规则。
    • 由于MVC的3个模块相对独立,改变其中一个均不会影响其他俩个,所以依据这种设计思想能构造良好的松耦合的构件。

  MVC处理过程

    • 首先,控制器接收用户的请求,并决定应该调用哪个模型来进行处理。
    • 然后,模型根据用户请求进行相应地业务逻辑处理并返回数据。
    • 最后,控制器调用相应地视图来格式化模型返回的数据,并通过视图呈现给用户。
时间: 2024-10-16 07:34:47

理解MVC模式的相关文章

[ASP.NET MVC 小牛之路]01 - 理解MVC模式--转载

PS:MVC出来很久了,工作上一直没机会用.出于兴趣,工作之余我将展开对MVC的深入学习,通过博文来记录所学所得,并希望能得到各位园友的斧正. 本文目录 理解一般意义上的MVC模式 MVC模式(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为以下三个基本部分: 模型(Model):模型用于封装与应用程序的业务逻辑相关的数据以及对数据的处理方法.“模型”有对数据直接访问的权力,例如对数据库的访问.“模型”不依赖“视图”和“控制器”,也就是说,模型不关心它会

深入理解MVC模式

一,什么是MVC模式 该模式是一种软件设计典范,他把软件系统划分为三个基本部分:模型层(Model).视图层(View).控制器(Controller) *Model(模型)表示应用程序核心(比如数据库记录列表) *View(视图)显示数据(数据库记录) *Controller(控制器)处理输入(写入数据库记录) Model(模型)是应用程序中用于处理应用程序数据逻辑的部分,通常模型对象负责在数据库中存取数据 View(视图)是应用程序中处理数据显示的部分,通常视图是依据模型数据创建的 Cont

ios 深刻理解MVC模式—代理方法

在oc中MVC模式得到广泛应用,所谓MVC,即模型Model,视图View,控制器Controller 控制器通过模型数据控制视图,而代理方法则是控制器控制视图的所使用的方法. 使用代理所需要满足的条件: 1.代理协议:里面声明了代理方法 2.视图View定义满足代理协议的代理属性,例如 @property(nonatomic,weak)id<UITableViewDelegate>delegate; 3.给View提供一个或几个方法,方法内View的代理view.delegate 调用它的代

MVC 模式——第3章

在深入到 ASP.NET MVC 框架的细节之间,最好熟悉 MVC 的设计模式及其背后的思想.良好地理解 MVC 背后的内容,有助于在阅读本书的过程中将该框架的特性放到相关的情境之中. 3.2 理解 MVC 模式 从高级术语上说,MVC 模式意味着一个 MVC 应用程序将被分离成至少3个部分. · 模型(Model):含有或表现用户进行操作的数据. 模型可以是简单的视图模型:它们只表现视图与控制器之间传递的数据: 也可以是域模型:它包含业务领域的数据,以及处理这些数据的操作.转换和规则. · 视

为什么要使用MVC模式,MVC模式的优势有哪些?请写出你熟悉的MVC轻量级框架名称。

MVC就是常说的:模型(Model),视图(View)和控制Controller) 它把业务处理和Jsp页面分开了.而以前的Jsp页面是把所有的代码都写在Jsp页面中,那样不利于维护 MVC模式的目的就是实现Web系统的职能分工. MVC模式的好处: 1.各施其职,互不干涉 在MVC模式中,三个层各施其职,所以如果一旦哪一层的需求发生了变化,就只需要更改相应的层中的代码而不会影响到其它层中的代码. 2.有利于开发中的分工 在MVC模式中,由于按层把系统分开,那么就能更好的实现开发中的分工.网页设

第3章 MVC模式

3.2 理解MVC模式 模型(Model):表示用户使用的数据. 1.视图模型(View Model),只表示视图和控制器之间传递的数据,比较简单: 2.领域模型(Domain Model),表示业务领域的数据,以及处理这些数据的操作.转换.规则. 视图(View):用于把模型的某些部分渲染成用户界面(UI). 控制器(Controller): 1.处理传入的请求: 2.执行模型上的操作: 3.选择渲染给用户视图. 重点: 在域模型设计阶段,一定要进行仔细的规划和设计:域中的每一个类.属性.操作

[转载]WIKI MVC模式

MVC模式(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控制器(Controller). MVC模式最早由Trygve Reenskaug在1978年提出[1] ,是施乐帕罗奥多研究中心(Xerox PARC)在20世纪80年代为程序语言Smalltalk发明的一种软件设计模式.MVC模式的目的是实现一种动态的程序设计,使后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能.除此之外,此

四:MVC模式

理解MVC模式 模型(Model):含有或表现用户进行操作的数据,模型可以是简单的视图模型,他们只表现视图和控制器之间的数据传递.也可以是域模型,包含业务领域的数据,以及处理这些数据的操作,转换和规则. 视图(View):将模型的某些部分渲染成用户界面 控制器(Controller):处理传入请求,执行模型操作,渲染给用户视图. 模型是程序工作的定义,不涉及UI也不涉及请求处理. MVC架构的每一部分都有良好的定义和自包含,这称为关注分离. 域模型 MVC最重要的部分是域模型,对于应用程序必须支

重构、重载和重写,mvc模式大概理解

重构重写和重载的区别: 重写:1.父类与子类之间的多态性,对父类的函数进行重新定义.如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 .方法重写又称方法覆盖. 2.若子类中的方法与父类中的某一方法具有相同的方法名.返回类型和参数表,则新方法将覆盖原有的方法. 3.子类函数的访问修饰权限不能少于父类的: 重载: 1.方法重载是让类以统一的方式处理不同类型数据的一种手段.多个同名函数同时存在,具有不同的参数.重载是一个类中多态性的一种表现. 2.重载的时候,方法名要一样,但是参数