1.MVC模式

有一种程序设计模式叫MVC,其核心思想是分工、解耦,让不同的代码块之间降低耦合,增强代码的
可扩展性和可移植性,实现向后兼容。

MVC的全拼为Model-View-Controller,最早由TrygveReenskaug在1978年提出,是施乐帕罗奥多研究中心(Xerox PARC)在20世纪80年代为程序语言Smalltalk发明的一种软件设计模式,是为了将传统的输入(input)、处理(processing)、输出(output)任务运用到图形化用户交互模型中而设计的。随着标准输入输出设备的出现,开发人员只需要将精力集中在业务逻辑的分析与实现上。后来被推荐为Oracle旗下Sun公司Java EE平台的设计模式,并且受到越来越多的使用ColdFusion和PHP的开发者的欢迎。现在虽然不再使用原来的分工方式,但是这种分工的思想被沿用下来,广泛应用于软件工程中,是一种典型并且应用广泛的软件架构模式。后来,MVC的思想被应用在了Web开发方面,被称为Web MVC框架。

MVC模式说明

M全拼为Model,主要封装对数据库层的访问,对数据库中的数据进行增、删、改、查操作。

V全拼为View,用于封装结果,生成页面展示的html内容。

C全拼为Controller,用于接收请求,处理业务逻辑,与Model和View交互,返回结果。

2.Django的MVT模式


M全拼为Model,与MVC中的M功能相同,负责和数据库交互,进行数据处理。

V全拼为View,与MVC中的C功能相同,接收请求,进行业务处理,返回应答。

T全拼为Template,与MVC中的V功能相同,负责封装构造要返回的html。

3.简单模式图:

1. MVC

2. MVT

MVT详细流程

设计模式中,MVC模式与MVT模式的区别相关推荐

  1. java设计模式中不属于创建型模式_23种设计模式第二篇:java工厂模式定义:工厂模式是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式...

    23种设计模式第二篇:java工厂模式 定义: 工厂模式是 Java 中最常用的设计模式之一.这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式. 工厂模式主要是为创建对象提供过渡接口, ...

  2. java设计模式中不属于创建型模式_Java设计模式(5)——创建型模式之建造者模式(Builder)...

    一.概述 概念 将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示.(与工厂类不同的是它用于创建复合对象) UML图 主要角色 抽象建造者(Builder)--规范建造方法与结果返还 ...

  3. 设计模式中的车轮战-责任链模式

    责任链模式在Android中的应用莫过于事件分发了,ViewGroup对事件分别给子View,从ViewTree的顶部至上而下地进行处理,直到事件被消化为止,这种方法在Android广播中也能看到 责 ...

  4. 单例设计模式中懒汉式和饿汉式的区别?

    什么时候创建.安全方面.实现方式 1.基本了解 懒汉模式:在类加载的时候不被初始化. 饿汉模式:在类加载的时候就完成了初始化,但是加载比较慢,获取对象比较快. 2.安全方面 懒汉模式在创建对象时不加上 ...

  5. 详细介绍MVC与Django的MVT模式

    Django 由python实现的,开源的,Web开发框架 起初被开发来用于管理劳伦斯日报(Lawrence Journal-World)旗下的新闻内容网站 2005年7月在BSD许可协议下发布 Dj ...

  6. 设计模式之十一个行为型模式的相关知识,简单易懂。

    一.    职责链模式-Chain of Responsibility Pattern 1)  请求的链式处理--职责链模式(一) "一对二","过",&quo ...

  7. django 之深入理解 MVT 模式

    概述 django 框架是在 2005 年开源,是迄今为止 python web 开发界名气最大的框架, 以 github 星星数量来比, 它遵循 Model-View-Template 开发模式,那 ...

  8. 设计模式之访问者(visitor)模式

    在患者就医时,医生会根据病情开具处方单,很多医院都会存在以下这个流程:划价人员拿到处方单之后根据药品名称和数量计算总价,而药房工作人员根据药品名称和数量准备药品,如下图所示. 在软件开发中,有时候也需 ...

  9. Java设计模式—工厂方法模式抽象工厂模式

    工厂方法模式与抽象工厂模式都是设计模式中重要而且常见的模式.       工厂方法模式:定义一个用于创建对象的接口,让子类决定实例化哪一个类.工厂方法使一个类的实例化延迟到其子类. 通用类图如下: 在 ...

最新文章

  1. Please do not register multiple Pages in pages/buildhelp/buildhelp.js
  2. Nat. Biotechnol.扩增子测序革命—用16S及18S rRNA全长进行微生物多样性研究
  3. MongoDB 3.0 WiredTiger Compression and Performance
  4. 树莓派AI视觉云台——8、WiringPi库函数
  5. 大牛书单 | 读书日,他们最近看了这些书
  6. Oracle 安装 检查操作系统版本 必须是 5.0 5.1 的解决办法
  7. 征稿 | 2019年全国知识图谱与语义计算大会(CCKS2019)第二轮征稿启事
  8. Android深入理解Fragment
  9. android 键盘遮盖输入框_Android软键盘遮住输入框的解决方法终极适配
  10. Springboot集成SpringSecurity 附代码
  11. Android Wear缺少本质上的创新
  12. vivado基本使用流程(详细版,一步步跟着来一定能成功)
  13. xlsx表格怎么做汇总统计_用excel表格统计数据-如何将多个EXCEL表格的数据进行汇总?...
  14. 计算机常用单位的换算方法,常用单位的换算(含温度长度计算机单位面积以及数量含义).doc...
  15. SpringBoot:AOP切面execution表达式
  16. 无缝拼接屏是怎样实现的?有什么特点!
  17. AppStore下载数据查看
  18. 记参加Microsoft Ignite 大会和北京CSDN创作者之夜
  19. appcan外部网页css,Appcan开发之页面布局与CSS排版
  20. QIIME 2教程. 05粪菌移植分析练习Fecal microbiota transplant(2021.2)

热门文章

  1. java寻宝算法_【Java 7】今天,你寻宝了吗?
  2. 设计一个字符串子串删除函数
  3. 百度站长平台"添加站点"提示"您无权访问该页面,点击确定按钮返回首页?"
  4. 【1235. 规划兼职工作】
  5. 盒式交换机S5750系列指示灯含义
  6. 交换机最多可以接几个_【技术】详解一个交换机能带动多少个网络监控摄像头?...
  7. STM32开发(14)----CubeMX配置ADC
  8. docker Aria2容器下载加速Aria2-pro+AriaNg 增加 BT-tracker
  9. 【工具】一键制作纯净ROM去除推广APP,支持线刷包卡刷包
  10. 开放式耳机怎么选,最适合佩戴的几款耳机推荐