1. Django 简介

Django是一个使用Python开发并具有高并发性,高可用性的Web应用框架,它基于BSD协议开源,在传统MVC软件架构模式的基础上,对数据传输和视图绑定的过程进行了封装,并提供给了MVT新型架构模式,在一定程度上提高了软件开发效率。

Django诞生于美国堪萨斯州的劳伦斯出版集团,最初目的是为了管理该集团开发的内容管理系统(CMS),它与2005年7月基于BSD协议开源发布,至今已有16年的发展历程。

Django作为最流行的Web应用软件开发框架之一,其核心是通过对底层功能代码的封装实现大量的Web基础功能,通过多进程,多线程的方式完成高并发操作,是一个非常优秀的Web框架。

1.2.1 MVC和MVT

长久以来,MVC架构模式一直是传统Web应用软件开发的核心思想,其通过对数据模型进行封装,完成数据和数据业务模型的整合,以及软件中数据资源的定义,同时对视图进行封装,实现模块化构建,在此基础上通过控制器完成数据业务模型和视图之间的数据传输,共同完善软件中业务处理流程。

对MVC解释如下:

– M:Model,模型,包含数据模型(Data Model)和业务模型(Business Model)。数据模型是封装软件中处理的核心数据的部分;业务模型是结合实际业务流程,在业务流程中完成数据操作的部分。在传统开发模式中属于后端开发或者服务端程序开发。
– V:view, 视图,在传统Web应用软件中主要是指和用户交互的界面,在界面中可以展示软件信息,并且可以接收用户输入的数据。在传统开发模式中属于前端开发。
– C:Controller,控制器,是软件中界面和模型之间的桥梁。在传统开发模式下,控制器主要有三个作用:

1. 将用户的不同请求奋发给后端对应的业务处理模型,起到请求分发的作用:
2. 对用户传输给后端的数据进行逻辑正确性验证,确保传输数据的正确性;
3. 对后端的数据进行逻辑验证后,绑定对应的试图页面相应给客户端进行渲染的展示。

在MVC处理流程中,对于控制器的作用有很大的争议,尤其是涉及逻辑验证步骤时。在实际项目开发中,对逻辑正确性和业务数据正确性的界定并不是非常明确的,在设计软件架构过程中,为了方便开发人员更加友好的使用框架,对于这样的意义和作用不是非常明确的组件或者模块都会进行高度封装,给开发人员提供一个简单明了的开发环境。

MVT架构模式,就是在这样的基础上衍生并封装的一种新的架构模式。在这种架构模式下,将传统MVC架构模式中的功能性控制器封装成可配置实现的路由(Router),对于业务流程相关的模型,视图和模版单独进行了封装。

M:Model,模型,包含数据模型和业务模型。同MVC中的“M”,主要封装在程序中处理的数据和业务流程处理过程。

V:View,视图,这里主要包含两个部分,即视图处理模块和视图展示页面。在视图处理模块中,一旦处理完某个业务,就会直接指定要渲染的视图页面,这是一个整体。

T: Template,模版,这里同样包含两个部分,即数据和模版语法。通过固定的模版语法,在网页视图中对数据进行渲染展示。

和MVC相比较而言,在MVT架构模式下处理流程变得复杂了,但是业务操作的细分更加精确,开发人员需要更多关注的是每一个模块中与业务流程相关的处理操作,在不影响软件脚骨的健壮性的基础上,在一定程度上提高了软件开发效率。