软件系统发展到今天已经很复杂了,在服务端软件,设计的知识很广泛,为了降低开发难度,提高开发效率,在某些方面去使用别人成熟的框架。

一些事务处理,安全性,数据流控制等都可以让框架处理,而开发人员把更多的时间投入进业务逻辑的实现。放在生活中理解,就是买个毛坯房,然后自己去装修。

Django 和 Flask:

在python中的Django和Flask 是较为流行且功能强大的两个开发框架

Flask是轻量级的可定制性框架,灵活,轻便,安全且容易上手通过插件的形式来进行个性化网站定制,

适合小型网站,也可开发大型网站,但是具体架构需要自己设计,选择自己喜欢的插件,考验开发者的能力

具有很强的扩展性和兼容性。

Django是重量级框架,遵循MVT设计模式,强调代码复用,有功能强大的第三方库,

自带ORM和模板引擎,用户多,适合大型网站,企业级网站,快速稳定

具有很强的可扩展性,强调快速开发和DRY(Do Not Repeat Yourself)原则。

MVC 和 MVT 

核心思想是解耦,让不同的代码块之间降低耦合,增强代码的可扩展性和可移植性,实现向后兼容

Django中使用的MVT是遵循MVC设计模式去执行。

MVC:

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

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

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

MVT:

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

2、V全拼为VIew,与MVC中的C功能相同,用于接收请求,处理业务逻辑,与Model和View的交互,返回结果

3、T全拼为Templates,用于接收请求,与MVC中的V功能相同,用于封装结果,生成页面显示的html内容

小结:

MVT基于MVC,流程和MVC大体一样,客户端发送请求,根据请求,通过url寻找视图,视图接收并处理请求,

访问数据库,拿到数据,再由视图返回到模板上,客户端接收到,渲染页面。

Flask 和Django的更多相关文章

  1. 详说Flask、Django、Pyramid三大主流 Web 框架

    前言 目前随着 Python 在大数据.云计算.人工智能方面的热度,Python Web 应该也会被更多企业了解使用. Python Web 框架千万种,没必要都去了解和学习,身边总有人说高手都用 F ...

  2. 如何理解Nginx, WSGI, Flask(Django)之间的关系

    如何理解Nginx, WSGI, Flask(Django)之间的关系 值得指出的是,WSGI 是一种协议,需要区分几个相近的名词: uwsgi 同 wsgi 一样也是一种协议,uWSGI服务器正是使 ...

  3. Flask 和 Django 框架的区别

    1)Flask Flask确实很“轻”,不愧是Micro Framework,从Django转向Flask的开发者一定会如此感慨,除非二者均为深入使用过 Flask自由.灵活,可扩展性强,第三方库的选 ...

  4. Flask与Django哪个更好更实用呢?砖家是这么认为的

        这一周我打算做一个 Flask 教程.本文先把 Flask 和 Django 做一个比对,因为我对这两个 Python Web 框架都有实际的开发经验.希望我可以帮助您选择学习哪个框架,因为学 ...

  5. Flask与Django的比较

    Flask与Django的区别 Flask Flask确实很"轻",不愧是Micro Framework,从Django转向Flask的开发者一定会如此感慨,除非二者均为深入使用过 ...

  6. Python之Flask和Django框架解决跨域问题,配合附加ajax和fetch等js代码

    Flask框架py解决跨域问题示例: # -*- coding: utf- -*- # by zhenghai.zhang from flask import Flask, render_templa ...

  7. Flask/Tornado/Django

    深入学习Python ,用Django做Web后端开发现在Python的用途愈来愈广,服务器.Web.游戏.爬虫.数据分析 以及人工智能 学习之路还很长 技术之路 不能回头 陷进去  就出不来 就跟恋 ...

  8. flask,scrapy,django信号

    简介 Django.Flask.scrapy都包含了一个“信号分配器”,使得当一些动作在框架的其他地方发生的时候,解耦的应用可以得到提醒. 通俗来讲,就是一些动作发生的时候,信号允许特定的发送者去提醒 ...

  9. 解决Flask和Django的错误“TypeError: 'bool' object is not callable”

    跟着欢迎进入Flask大型教程项目!的教程学习Flask,到了重构用户模型的时候,运行脚本后报错: TypeError: 'bool' object is not callable 这是用户模型: c ...

随机推荐

  1. pikachu——暴力破解

    前述: 前面学习了sqli-labs 和 DVWA,也算是初步涉足了web漏洞,了解了一些web漏洞的知识.所以在pikachu上面,会更加仔细认真,把前面没有介绍到的知识点和我一边学习到的新知识再补 ...

  2. 使用synchronized修饰静态方法和非静态方法有什么区别

    前言 最近被问到了这个问题,第一次回答的也是很不好,在此参考网上答案进行整理记录.供大家学习参考. Synchronized修饰非静态方法 Synchronized修饰非静态方法,实际上是对调用该方法 ...

  3. TLS/SSL 梳理

    数据加密通篇都是为了防止第三方的劫持伪造,保证连接安全, 毫无遮掩的明文传输只有民风淳朴的时候才是安全的. 先是一些基础的内容: 对称加密 最开始为了对数据进行加密,使用的是对称加密算法,即双方协商好 ...

  4. C语言程序设计(二) C数据类型

    第二章 C数据类型 八进制整数由数字0开头,后跟0~7的数字序列组成. 十六进制整数由数字0加字母x(或X)开头,后跟0~9,a~f(或A~F)的数字序列组成. 整型常量: 默认的int型定义为有符号 ...

  5. Vue2.0 【第一季】第1节 走进我的Vue2.0

    目录 Vue2.0 [第一季]内部指令 第一节 走进我的Vue2.0 Vue2.0 [第一季]内部指令 记录一下我的代码地址:D:/Code/Vue 编辑器:VS code 前置知识: 1.HTML的 ...

  6. 03 Uipath调用VBA脚本,处理excel文档格式

    前言: 在平时我们的工作中,经常需要使用Uipath自动的导入大量数据到Excel表格中,但是却发现,数据导入到Excel之后,格式却是很乱,基本不能看,就像下图: ​ 而Uipath对Excel的操 ...

  7. vquery 一些应用

    // JavaScript Document function myAddEvent(obj,sEv,fn){ if(obj.attachEvent){ obj.attachEvent('on'+sE ...

  8. 什么是yarn,如何使用yarn安装项目依赖

    一.yarn的简介: Yarn是facebook发布的一款取代npm的包管理工具. 二.yarn的特点: 1.速度超快. Yarn 缓存了每个下载过的包,所以再次使用时无需重复下载. 同时利用并行下载 ...

  9. 【Weiss】【第03章】练习3.22、3.23、3.24:无代码题,栈的思考题

    [练习3.22] a.提出支持栈的Push和Pop操作以及第三种操作FindMin的数据结构,其中FindMin 返回该数据结构的最小元素,所有操作在最坏情况下的运行时间都是O(1). b.证明,如果 ...

  10. spring总结————AOP面向切面总结

    spring总结————AOP面向切面 一.spring aop概念 spring aop面向切面编程,java是面向对象的语言. 真正的service层代码 业务逻辑层再处理业务之前和之后都要进行一 ...