目录
回复内容:
首页 后端开发 Python教程 为什么 Flask 有那么多的好评?

为什么 Flask 有那么多的好评?

Jun 06, 2016 pm 04:22 PM

有说吸收了很多好的思想,谁能分析分析,最好能从通用的角度分析,不要局限在语言,框架上

回复内容:

Flask 的作者 Armin Ronacher 很早就开发了 Werkzeug 套件,用于开发高质量的 WSGI Application。后来推荐给 Bottle 作者的时候,Bottle 的作者非常执着于“单文件”和“无依赖”,拒绝了使用 Werkzeug。再后来 Armin Ronacher 基于 Werkzeug 开发了 Flask,并且压缩成了单个 py 文件,算是黑 Bottle 的一个小玩笑吧。真正溯源,Bottle 和 Flask 应该都是模仿 Ruby 的 Sinatra 吧……

后来 Flask 获得比 Bottle 更多的关注,个人推测是因为其开发和设计的实用主义作风。无论是 Unicode 支持(这块在 Python 2.x 下还挺疼的)还是 Message Flash 这样的小功能,Flask 都做的非常人性化。除此以外,可插拔的 Extension 机制和 Blueprint 等设计,都为项目从小发展到大的需求做了考虑。另外对于开发、测试 Web 应用中的一些优秀模式,Flask 维护团队在文档、邮件列表等处都非常努力地做了传播。

其实就算抛开 Flask 不说,Werkzeug 本身也是一个高质量的库。Flask 被开发出来,初衷也是展示如何用 Werkzeug 定制出一个 Web 框架。如果说要给 Flask 的设计多少多少好评,有木有想过这些好评也许是应该属于 Werkzeug 的呢 之前用过flask,大概来说,
一是看上去简单,对于有编程经验的人来说,上手很快。
二是文档很好。
三是很多扩展看上去也很合理。

。。。
后来的时候,发现其实也不简单,需要某些功能要使用插件也是要学习成本的,而且文档更分散。扩展的文档有的也不那么好,要去看源文件,甚至连很常用的,flask-sqlchemy。有的扩展不太给力,比如flask-mail的master分支不能在gae上用。
使用flask感觉还是很愉快的,如果说是为了折腾是一个很好的东西。如果是为了生产,django更值得信赖。 说一下我的使用感受,最初刚学python,先看的django,跟着官方文档做例子,有点无脑,配置多一些。
后来,学习了flask,也是看的官方文档,学的很舒服,微内核和可扩展对初学者也很有好处。
作为一名入门者,我觉得的,Flask更适合初学者,你可以自己实现一些功能,也可以使用丰富的扩展,这样可以避免只会使用扩展,而不懂原理的问题,灵活性完全在你自己手里。
还有,django和flask的文档都超赞的说~
其他学习资料django要比flask学习多一些 看过flask的入门文档.
相对与django而言, flask的入门文档简直人性.
我看django的tutorial, 每次都有新收获, 简直了.
所以flask上手快, 看完入门指南能立即有思路.
看完django入门文档, ... 呵呵

所以flask的学习曲线比django的要平滑很多. 这是很吸引人的.

------------
但是我用的是django... =_= Django太大了,文档说实话阅读性挺差的。
Tornado文档虽然也很不错,但是全英文把很多人都拒之门外(包括一开始接触Python框架的我)。
Flask文档非常人性,先来个入门指南建立一下信心,而且初期用到的指南里都提及了,框架虽然小,但是全啊,而且插件多得可怕,即插式的插件实在太方便了。
学到中途再读Flask源码的时候发现它源码写得实在良心,我一个第一次读框架源码的都能读得不错简直是业界良心。

不过现在准备转转Tornado了,发现Tornado虽然造轮子是常态但是框架提供的都是核心功能呀,二者都是良心。至于Django嘛- -我真不喜欢这个框架。 根据上面的回答小节,新手学习Flask、之后Django,然后Tornado,学以致用,技多鬼压床 1.开箱即用
2.低耦合
3.可扩展
4.文档完善
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1663
14
CakePHP 教程
1420
52
Laravel 教程
1315
25
PHP教程
1266
29
C# 教程
1239
24
Python vs.C:申请和用例 Python vs.C:申请和用例 Apr 12, 2025 am 12:01 AM

Python适合数据科学、Web开发和自动化任务,而C 适用于系统编程、游戏开发和嵌入式系统。 Python以简洁和强大的生态系统着称,C 则以高性能和底层控制能力闻名。

2小时的Python计划:一种现实的方法 2小时的Python计划:一种现实的方法 Apr 11, 2025 am 12:04 AM

2小时内可以学会Python的基本编程概念和技能。1.学习变量和数据类型,2.掌握控制流(条件语句和循环),3.理解函数的定义和使用,4.通过简单示例和代码片段快速上手Python编程。

Python:游戏,Guis等 Python:游戏,Guis等 Apr 13, 2025 am 12:14 AM

Python在游戏和GUI开发中表现出色。1)游戏开发使用Pygame,提供绘图、音频等功能,适合创建2D游戏。2)GUI开发可选择Tkinter或PyQt,Tkinter简单易用,PyQt功能丰富,适合专业开发。

您可以在2小时内学到多少python? 您可以在2小时内学到多少python? Apr 09, 2025 pm 04:33 PM

两小时内可以学到Python的基础知识。1.学习变量和数据类型,2.掌握控制结构如if语句和循环,3.了解函数的定义和使用。这些将帮助你开始编写简单的Python程序。

Python与C:学习曲线和易用性 Python与C:学习曲线和易用性 Apr 19, 2025 am 12:20 AM

Python更易学且易用,C 则更强大但复杂。1.Python语法简洁,适合初学者,动态类型和自动内存管理使其易用,但可能导致运行时错误。2.C 提供低级控制和高级特性,适合高性能应用,但学习门槛高,需手动管理内存和类型安全。

Python和时间:充分利用您的学习时间 Python和时间:充分利用您的学习时间 Apr 14, 2025 am 12:02 AM

要在有限的时间内最大化学习Python的效率,可以使用Python的datetime、time和schedule模块。1.datetime模块用于记录和规划学习时间。2.time模块帮助设置学习和休息时间。3.schedule模块自动化安排每周学习任务。

Python:探索其主要应用程序 Python:探索其主要应用程序 Apr 10, 2025 am 09:41 AM

Python在web开发、数据科学、机器学习、自动化和脚本编写等领域有广泛应用。1)在web开发中,Django和Flask框架简化了开发过程。2)数据科学和机器学习领域,NumPy、Pandas、Scikit-learn和TensorFlow库提供了强大支持。3)自动化和脚本编写方面,Python适用于自动化测试和系统管理等任务。

Python:自动化,脚本和任务管理 Python:自动化,脚本和任务管理 Apr 16, 2025 am 12:14 AM

Python在自动化、脚本编写和任务管理中表现出色。1)自动化:通过标准库如os、shutil实现文件备份。2)脚本编写:使用psutil库监控系统资源。3)任务管理:利用schedule库调度任务。Python的易用性和丰富库支持使其在这些领域中成为首选工具。

See all articles