zoukankan      html  css  js  c++  java
  • 浅谈模型-视图-控制器模式

      软件架构是一个系统的草图。软件架构描述的对象是直接构成系统的抽象组件。各个组件之间的连接则明确和相对细致地描述组件之间的通讯。在实现阶段,这些抽象组件被细化为实际的组件,比如具体某个类或者对象。在面向对象领域中,组件之间的连接通常用接口来实现。我接下来就简单的描述一下我对于模型-视图-控制器模式的理解。

      模型-视图-控制器模式又叫MVC模式,也就是Model View Controller模式。它是一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。其中Model(模型)指的是应用程序中用于处理应用程序数据逻辑的部分,一般来说,模型对象负责在数据库中存取数据。View(视图)指的是应用程序中处理数据显示的部分。通常视图是依据模型数据创建的。Controller(控制器)指的是应用程序中处理用户交互的部分。通常控制器负责协调模型和视图,从视图读取数据,控制用户输入,并向模型发送数据,根据用户请求的来选择调用哪个模型来处理业务,以及最终由哪个视图为用户做出响应。

      模型:负责封装并实现应用的具体功能。可以实现系统中的业务逻辑,通常可以用JavaBean来实现。

      视图:用于与用户的交互。用来将模型的内容展现给用户。用户可以通过视图来请求模型进行更新。视图从模型获得要展示的数据,然后用自己的方式展示给用户,相当于提供页面来与用户进行人机交互。比如用户在登陆注册界面完成信息的填报后点击确定,由此来向控制器发出这个请求。

      控制器:是Model与View之间沟通的桥梁。用来控制应用程序的流程和处理视图所发出的请求。当控制器接收到用户的请求后,会将用户的数据和模型相映射,也就是调用模型来实现用户请求的功能。然后控制器会选择用于响应的视图,把模型更新后的数据展示给用户。

      MVC模式的这三个部分的职责非常明确,而且相互分离,因此每个部分都可以独立地改变而不影响其他部分,从而大大提高应用的灵活性和重用性。

      MVC模式可以为一个模型在运行时同时建立和使用多个视图。变化-传播机制可以确保所有相关的视图及时得到模型数据变化,从而使所有关联的视图和控制器做到行为同步。 但是与此同时,它也增加了系统结构和实现的复杂性。对于简单的界面,严格遵循MVC,使模型、视图与控制器分离,会增加结构的复杂性,并可能产生过多的更新操作,降低运行效率。 

  • 相关阅读:
    Java基础学习总结(33)——Java8 十大新特性详解
    Java基础学习总结(33)——Java8 十大新特性详解
    RabbitMQ学习总结(6)——消息的路由分发机制详解
    RabbitMQ学习总结(6)——消息的路由分发机制详解
    Stanford公开课《编译原理》学习笔记(1~4课)
    补习系列(21)-SpringBoot初始化之7招式
    使用modelarts部署bert命名实体识别模型
    全面认识 RUST -- 掌控未来的雷电
    补习系列(20)-大话 WebSocket 与 "尬聊"的实现
    【开发者portal在线开发插件系列二】多条上下行消息(messageId的使用)
  • 原文地址:https://www.cnblogs.com/qq1499632156/p/9067932.html
Copyright © 2011-2022 走看看