MVC架构体系

目录

  • 架构体系
    • MVC(模型视图编辑器)
    • 结构
    • 目的
    • 特点

架构体系

架构是指一个或是一种通用的、或可重复利用的解决问题的方案,用于在给定上下文中的软件体系结构中经常出现的问题。架构模式与软件设计模式类似,但意义更为广泛。

MVC(模型视图编辑器)

模型-视图-控制器模式,也称为MVC模式(Model View Controller)。用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。它把软件系统分为三个基本部分:

  1. 模型(Model):负责存储系统的中心数据。

  2. 视图(View):将信息显示给用户(可以定义多个视图)。

  3. 控制器(Controller):处理用户输入的信息。负责从视图读取数据,控制用户输入,并向模型发送数据,是应用程序中处理用户交互的部分。负责管理与用户交互交互控制。

    视图和控制器共同构成了用户接口。
    且每个视图都有一个相关的控制器组件。控制器接受输入,通常作为将鼠标移动、鼠标按钮的活动或键盘输入编码的时间。时间被翻译成模型或试图的服务器请求。用户仅仅通过控制器与系统交互。
    MVC架构体系_第1张图片

结构

  • 模型组件包含应用程序的功能内核,他封装了相应的数据并输出执行特定应用程序处理的过程;模型也提供访问数据的函数,这些数据有获得待显示的数据的视图组件使用。
  • 控制器代表用户调用所有这些过程。

目的

实现一种动态的程序设计,是后序对程序的修改和扩展简化,并且使程序某一部分的重复利用称为可能。

通过对复杂度的简化,使程序结构更加直观。

将信息的内部表示与信息的呈现方式分离开来,并接受用户的请求。它分离了组件,并允许有效的代码重用。即,将模型和视图的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如一批统计数据你可以分别用柱状图、饼图来表示。C存在的目的则是确保模型和视图的同步,一旦模型改变,视图应该同步更新。

特点

MVC重要特点就是两种分离:

视图和数据模型的分离:使用不同的视图对相同的数据进行展示;分离可视和不可视的组件,能够对模型进行独立测试。因为分离了可视组件减少了外部依赖利于测试。(数据库也是一种外部组件)

视图和表现逻辑(Controller)的分离:Controller是一个表现逻辑的组件,并非一个业务逻辑组件。MVC可以作为表现模式也可以作为建构模式,意味这Controller也可以是业务逻辑。分离逻辑和具体展示,能够对逻辑进行独立测试。

  • 优点:耦合性低;重用性高;生命周期成本低;部署块;可维护性高;有利软件工程化管理。
  • 缺点:没有明确的定义;不适合小型,中等规模的应用程序;增加系统结构和实现的复用性;视图与控制器间的过于紧密的连接;视图对模型数据的低效率访问;一般高级的界面工具或构造器不支持模式。

你可能感兴趣的:(设计模式)