django和flask的选择


类别:web开发   

发布时间:2019/01/28 15:11:58   更新时间:2020/07/31 19:51:47


django和flask的选择是老话题了。今天我谈谈自己的看法。

 

一、功能

django提供了一整套东西。这些东西进行了整体的测试,整体提供文档。能够快速、可靠的实现一个网站基本的功能。但随着网站功能不断增加,也不是只安装django就能搞定一切。也是会需要安装一些其它的库。比如:django-rest-framework、django-social-auth、django-socketio、django-guardian等等,都几乎必须使用。安装的多了,就会有相互配合问题,但总体来说,django的生态和文档都相对可靠且稳定。此外,django的ORM和DTL事实上简单、够用、好用,完全没必要去更换。

 

flask核心小的多,有很多独立的库可选择的进行安装。但是,相互之间的磨合测试并不充分,常常会有问题。虽然这些问题也不难解决。但是随着使用的库越来越多,随着版本升级和业务的快速迭代。这些库之间的相互融合测试,变的会不胜其烦。

 

所以,如果你要做一个基本功能,或者稍微高于基本功能的网站,还是用django好一点。

 

二、初心

django有非常成功的应用实例,比如Instagram。但是flask做的如此成功的实例没怎么听说过。

回到初心。我们为什么要考虑django和flask?为什么要考虑python?就是因为,python开发效率高。纵然它不见得完美,但高开发效率,就有助于技术人员低成本的、快速的实现梦想。

从这个角度讲,django显然是更加高效、更加快速的实现业务梦想的选择。flask则需要造太多的 轮子,或者验证修改太多的轮子。

 

三、各尽其用

那么,django更加适合实现网站、或者互联网产品的后端。flask当然也有更加适合的场景。

1、flask适合做嵌入式设备的bs维护系统的后端。

在嵌入式设备上,存储紧张、很多机制并不要求,比如:大量客户并发,复杂的认证、权限、支付、第三方接入,seo,websocket等等都不要求。用flask做api接口,非常简单高效,比django要方便很多。

所以,设备类软件的bs维护界面,非常适合flask做。

2、flask适合初学。

本质上,如果确实是初学web后端开发。那么flask似乎更好理解一点。但是也不是说努力点django就不能理解。

很多人说,django开发的太少,封装太深。flask开发的多一些,便于学习控制。但实际上,这都是浮云吧。

 

四、其它的python的web架构。

python的web架构,django和flask的功能相对好用。其它太简洁的,造的轮子更多,不如flask。其它相对复杂的,比不上django完备。

本质上,这些都不是什么核心科技,简单、好用、够用即可。


本文网址:https://www.pyfield.com/blog/?id=1