2024-11-02 10:14:44
导读:很多朋友问到关于django为什么比flask的相关问题,本文首席CTO笔记就来为大家做个详细解答,供大家参考,希望对大家有所帮助!一起来看看吧!
为什么我用Flask,而不是Django我个人工作是用ASP.NETMVC。。。但学生时代一直都在玩Python。。。关于Python上的框架,我倒觉没什么高低之分。。。非要说差别,则是适合人群不同而已。。Django适合菜鸟,Flask适合高手。。
对于高手,Flask肯定更好,毕竟搭配方式可以自己选嘛。。但对于我这种菜鸟来说,就不太适合,毕竟不想花太多精力在学习上,只要有简单的,就不想用复杂的。尽管最终还是两个都学了。。但这并非我的本意。。。
Flask由于只提供了收发请求的基本功能,所以初装时很轻量,用来做个博客自己玩非常爽,又轻量又舒服,比Django好用太多了,但如果项目大一点,需要自己搭各种框架。。。像我这种菜鸟,离开教程还真搭不起来。。。
Django则是从头到尾一直重。。如果做一个博客,显得有点杀鸡用牛刀。。但要实现一个完整项目。。。其实比Flask要简单,不需要懂太多知识。。。也不需要自己搭框架。。比较适合我这种不怎么爱学习的学渣。。。
拿安装Windows系统举例:
Flask比较像是安装一个空系统,之后再自己下载安装显卡驱动,主板驱动,USB驱动。Django像是直接安装一个自带所有驱动的系统,比如某某花园
这就有了两种理解,。。Django的路子则是更无脑一些,不需要懂什么叫驱动,装完系统直接用就可以了。。对高手来说,Flask则可以自己选择自己到底想要啥。。但基础知识也就显得更重要
不过最后我还是抛弃了Python,转到了.NET上。。原因在于,我要去做一些游戏方向的东西。。正由于学习游戏开发的过程,使我觉得要学的东西实在太多了。。精力有点跟不上。。所以从此,只要功能没差别,哪个简单选哪个。。。这个角度来讲,Django更符合Python的哲学。。而Flask,搭配更自由,则更符合模块化的思想。。
会了django还有必要学flask吗从快速构建的角度看呢,flask讲道理比django快。但是这个快是建立在你真的对http以及python和对应的模块够了解到前提上。
至于性能……django性能是比flask差一点,没差到特别多。最重要的一点是,这个效率根本从来不是小站点的关键问题。到底哪家会穷到必须要单台服务器支撑5k并发?有那个流量早加机器了好么……高性能相反是为流量大到很极端的状况以至于加机器都不划算的地步了才有需求的,又或者是必须维持一堆长链接。然而这都不是flask与django能够直接做到的。
我为什么不用Django而用Flaskdjango更加适合新手,因为里面有很多里面集成了很多可用的模块。而flask需要去自己找合适的模块。所以django更适合新手,而flask适合比较熟悉web框架的人,比较灵活。
Django和Flask比较到底哪个比较好用
Flask是小而精的微框架,它不像Django那样大而全,如果使用Flask开发,开发者需要自己决定使用哪个数据库ORM、模块系统、用户认证系统等,需要自己组成。
与采用Django开发对比,开发者在项目开始的时候可能需要花费更多的时间去了解、挑选各个组件,因此Flask开发的灵活度更高,开发者可以根据自己的需要去选择合适的插件。
当然Flask历史相对较短,第三方APP自然没有Django那么全面。
Django和Flask这两个框架在设计上各方面有什么优缺点一、整体设计方面
首先,两者都是非常优秀的框架。整体来讲,两者设计的哲学是区别最大的地方。
Django提供一站式的解决方案,从模板、ORM、Session、Authentication等等都分配好了,连app划分都做好了,总之,为你做尽量多的事情,而且还有一个killer级的特性,就是它的admin,配合django-suit,后台就出来了,其实最初Django就是由在新闻发布公司工作的人设计的。
Flask只提供了一些核心功能,非常简洁优雅。它是一个微框架,其他的由扩展提供,但它的blueprint使它也能够很方便的进行水平扩展。
二、路由设计
Django的路由设计是采用集中处理的方法,利用正则匹配。Flask也能这么做,但更多的是使用装饰器的形式,这个有优点也有缺点,优点是读源码时看到函数就知道怎么用的,缺点是一旦源码比较长,你要查路由就不太方便了,但这也促使你去思考如何更合理的安排代码。
三、应用模块化设计
Django的模块化是集成在命令里的,也就是说一开始Django的目标就是为以后玩大了做准备的。每个都是一个独立的模块,为以后的复用提供了便利。
Flask通过Blueprint来提供模块化,自己对项目结构划分成不同的模块进行组织。
四、配置
Django的配置主要还是靠settings.py来做,当然为了Development和Production环境分离,还有一些方法来处理配置。
Flask的配置很灵活,有多种方法配置,不同环境的配置也非常方便。
五、文档
两者都提供了详尽的文档,Flask的文档风格很受我个人喜好,Django的文档也非常优秀,当时用学Django时,就是只看了Django的文档。
六、社区
Django社区很大,各种插件很齐全,大部分情况下你都能找到你想要的。
Flask起步晚,但社区也不小,之前有一次看在github上的star数,两个相差并不远,说明越来越多的人关注它,虽然插件没那么全,但常用的还都是有的,而且质量都比较高。
结语:以上就是首席CTO笔记为大家介绍的关于django为什么比flask的全部内容了,希望对大家有所帮助,如果你还想了解更多这方面的信息,记得收藏关注本站。