都2022年了,Python Web框架你不会只知道Django和Flask吧?

写在前面

本文的诞生非常偶然,这两天一个小小小学弟问橡皮擦一个陈年旧问题,Python 基础学完了,想学习一个 Python Web 框架,是先学习 Django 呢,还是学习 Flask,现在的公司都用啥?

每次出现这个问题,我都会画一个清单,这次让我们直接把它变成一篇文章。

[En]

Every time this problem arises, I will draw a list, this time let’s turn it directly into an article.

标题就叫做《2022 年,你该学习的 Python Web 框架》

下面涉及的所有框架都不提供官方网站或任何学习材料,作为一个合格的程序员,应该自己找到。

[En]

All the frameworks involved below do not provide the official website or any learning materials, which, as a qualified programmer, should be found by yourself.

第一款:Flask

首先要学会这个。它轻便、灵活、可定制。关键的一点是,它使用方便,也很受欢迎。

[En]

Learn this first. It is light, flexible and customizable. The key point is that it can be used easily, and it is also popular.

橡皮擦认识很多 Python Web 工程师就拿这个接小活做,==做的又快,来钱也快==。

Logo 是个辣椒的图标,比较火热~

第二款:Django

Python Web 框架中的大哥,大而全,自带了一堆功能,学会了之后,做后台管理系统,安装之后,配置几下就可用。

有一定的学习门槛,框架模式遵循 MTV 模式,即模型,视图,模板。

如果你初学阶段就上手的 django,掌握之后,回过头来看 Flask,==呃,小项目你会毫不犹豫的选择 Flask==。

第三款:tornado

是 Python Web 框架的同时,也是一款异步网络库,使用的是非阻塞 IO,所以处理速度特别快。 性能优秀,高并发优秀, 但是因为其涉及异步 IP 相关知识,所以对初学者不友好,即学起来难度有那么一丢丢的高

如果你 Python 基础还不错,那 tornado 对你来说也是一个轻量级的 Web 框架,而且支持异步编程和 Web Socket,必须学这个呀。

第四款:Bottle

一个遵循 WSGI 的微型 Web 框架,整个架子就一个几十 K 的文件,里面包含路由,模板,简单的数据访问,6 的飞起。

不过也正是因为它”太简陋”了,学学就会了,所以大家总是在忽略它。

第五款:Sanic

不新不旧,不火不热的框架,基于 Python3.6+实现,支持 async/await 语法,所以也是一个高效框架。

目前的问题就是资料少,生态没有那么好(Sanic 插件文档都几乎没有),不过学习阶段肯定够了,语法非常类似 Flask,所以二者我选 Flask。

但是注意一点 Sanic 是异步框架,性能优于 Flask。

第六款:FastApi

没错,现在大家炒的最火热的”现代” Python Web 框架,号称性能第一,编码速度第一,文档最简单,还能帮程序员减少错误。

还有一点是新,2019 年的框架,当下又这么火,所以必须学习一下。

其余 Python Web 框架

除了上面提到的车架,还有一些特殊情况下的车架。

[En]

In addition to the frames mentioned above, there are some niche, or wheel frames for special situations.

如果你有更多的东西要学,你可以试试看。

[En]

If you have more to learn, you can dabble in it.

一个高性能构建大规模应用以及微服务的 Python Web 框架。

以高效率和快节奏的开发能力而出名的 Python Web 框架。

支持异步的 Web 框架。

所提倡的是一个更加关注产品、简化开发过程和简化语法的框架。

[En]

What is promoted is a framework that focuses more on products, simplifies the development process, and simplifies syntax.

看名字就能猜测一下,它是一款专注于 Python Api 的框架。

hug 的定义是一个 RESTFUL API 的框架,做接口平台用的框架

BlackSheep 是一个异步 Web 框架,语法与 Flask 类似。

着重优化了路由查找功能,因为号称是最快的 Python Web 框架之一,不过同行都这么称呼自己。 但是它的名字实在不讨好,毕竟橡皮擦总是创建一个叫 index.py 的文件。

一个轻量级的 ASGI 框架,在后面橡皮擦为大家补充一篇介绍 ASGI 知识点的文章。

底层是 starlette,是 kennethreitz 写的,质量很有保证,这个大佬是谁? requests 模块的作者。

你自己找吧。我对此了解不多,我也没有太多信息。

[En]

Search by yourself. I don’t know much about this, and I don’t have much information.

同样是一款小巧迷你的开发 API 的框架

写爬虫常用,基于 asyncio 和 异步 Web 框架。

与其它框架不同,cherrypy 有自己的想法,它希望开发者按照面向对象的思路开发 Web 系统,所以可以重点关注一下这个框架。

以 Django 为竞争对手的框架,你现在应该知道它是啥了吧。

Cyclone 将 Tornado API 实现为 Twisted 协议。

好家伙,这个是 Django 和 FastApi 的结合体,官方说的是 Fast Django REST Framework,而且口号是:fast to learn,fast to code,fast to run,厉害,厉害。

Guido van Rossum 认为这是最好的 Python Web 框架,可惜作者已经不在了。

Python Web 框架非常多,很多并未出现在上文,一个 Python Web 工程师仅需要学习前 6 款即可,剩下的可以工作中进行学习。 本文你可以收藏,然后万一哪天用到了呢~

Original: https://blog.51cto.com/cnca/5604514
Author: 梦想橡皮擦
Title: 都2022年了,Python Web框架你不会只知道Django和Flask吧?

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/500609/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球