在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
Flask框架和Django框架的区别是什么?Flask自由、灵活,可扩展性强,第三方库的选择面广,开发时可以结合自己最喜欢用的轮子,也能结合最流行最强大的Python库;Django太重了,除了web框架,自带ORM和模板引擎,灵活和Django能开发小应用,但总会有“杀鸡焉用牛刀”的感觉;
Flask框架和Django框架区如下:
一、Flask框架
Flask确实很“轻”,不愧是MicroFramework,从Django转向Flask的开发者一定会如此感慨,除非二者均为深入使用过;
Flask自由、灵活,可扩展性强,第三方库的选择面广,开发时可以结合自己最喜欢用的轮子,也能结合最流行最强大的Python库;
入门简单,即便没有多少web开发经验,也能很快做出网站;
非常适用于小型网站;
非常适用于开发web服务的API;
开发大型网站无压力,但代码架构需要自己设计,开发成本取决于开发者的能力和经验;
各方面性能均等于或优于Django;
Django自带的或第三方的好评如潮的功能,Flask上总会找到与之类似第三方库;
Flask灵活开发,Python高手基本都会喜欢Flask,但对Django却可能褒贬不一;
Flask与关系型数据库的配合使用不弱于Django,而其与NoSQL数据库的配合远远优于Django;
Flask比Django更加Pythonic,与Python的philosophy更加吻合。
二、Django框架
Django太重了,除了web框架,自带ORM和模板引擎,灵活和Django能开发小应用,但总会有“杀鸡焉用牛刀”的感觉;
Django的自带ORM非常优秀,综合评价略高于SQLAlchemy;
Django自带的模板引擎简单好用,但其强大程度和综合评价略低于Jinja;
Django自带ORM也使Django与关系型数据库耦合度过高,如果想使用MongoDB等NoSQL数据,需要选取合适的第三方库,且总感觉Django+SQL才是天生一对的搭配,Django+NoSQL砍掉了Django的半壁江山;
Django目前支持Jinja等非官方模板引擎;
Django自带的数据库管理app好评如潮;
Django非常适合企业级网站的开发:快速、靠谱、稳定;
Django成熟、稳定、完善,但相比于Flask,Django的整体生态相对封闭;
Django是Pythonweb框架的先驱,用户多,第三方库最丰富,最好的Python库,如果不能直接用到Django中,也一定能找到与之对应的移植;
Django上手也比较容易,开发文档详细、完善,相关资料丰富。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Python虚拟机框架知识点讲解
Python虚拟机框架知识点讲解,博学谷小编主要介绍讲解Python字节码、Python虚拟机的运行框架、Python运行时环境初探的相关内容,Python是一种半编译半解释型运?行环境,在模块"载?入"时将源码编译成字节码(ByteCode),这些字节码会被虚拟机在一个"巨大"的核心函数里解释执,接下来我们一起看下。
5602
2019-06-26 11:00:10
什么是 cookie?cookie和session 有什么区别?
cookie 数据存放在客户的浏览器上,session 数据放在服务器上。cookie 不是很安全,别人可以分析存放在本地的 cookie 并进行 cookie 欺骗,考虑到安全应当使用 session。session 会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面,应当使用cookie。
5581
2019-06-27 11:12:42
Python理解装饰器并写出一个计时器记录方法执行性能的装饰器?
Python理解装饰器并写出一个计时器记录方法执行性能的装饰器?装饰器本质上是一个 Python 函数,它可以让其他函数在不需要做任何代码变动 的前提下增加额外功能,装饰器的返回值也是一个函数对象。
5974
2019-07-01 15:14:14
Python开发多进程、多线程以及协程是什么?项目是否用?
其实多线程,多进程,在实际开发中用到的很少,进程:一个运行的程序(代码)就是一个进程,没有运行的代码叫程序;线程:调度执行的最小单位,也叫执行路径;协程:是一种用户态的轻量级线程,协程的调度完全由用户控制。
7879
2019-07-02 16:33:41
Python工程师数据库常见面试题
Python最开始是被用于编写自动化脚本的,但是随着python版本的迭代以及语言新功能的添加,越来越多的被用在项目开发领域。作为计算机程序设计语言,都需要与数据库实现交互。所以作为Python开发工程师你一定要熟练数据的使用。下面就为大家分享一些Python开发工程师面试过程中遇到的关于数据库的题目。
5922
2019-07-05 17:43:23