yxt

yxt

V2EX 第 2419 号会员,加入于 2010-10-16 20:51:02 +08:00
今日活跃度排名 5450
根据 yxt 的设置,主题列表被隐藏
二手交易 相关的信息,包括已关闭的交易,不会被隐藏
yxt 最近回复了
VEX483600243 已用, 谢谢
256 天前
回复了 greyli 创建的主题 Python Flask 2.0 版本发布
@abersheeran
这 虽然暴露了依赖的细节 但我大部分时间还是对着 fastapi 的文档写呀 我直接面对的并不是 starlette 以及我虽然没使用异步,一整个项目还是做下来过的
大意如此,我不会因为依赖关系而区别对待
257 天前
回复了 greyli 创建的主题 Python Flask 2.0 版本发布
@abersheeran
@frostming
@greyli

首先向各位开源大佬问个好 :) 技术上向各位学习, 这儿仅就 @greyli 的文章的观点讨论一二.

关于项目愿景, 定位和技术定位, 严格上说的确 FastAPI 和 Flask 不完全对应, 理解各位这个思考问题的角度.

我的角度更偏用户:

- 用户用的是谁的 API, 就是在用哪个"框架", FastAPI 在 starlette 上包了一层, 用户没有直接用 starlette, 就说明这层包装有意义 (或, 最终发现无意义而弃之), 没必要去强调依赖关系, 技术上的核心和用户的感知不一定是统一的 (此处 @abersheeran );
- 用户基于流行程度 /成熟程度的比较是很自然的逻辑: 先筛选流行 /成熟的, 再对照看有没有满足自身需求. 首先判断两者是否等价, 是否直接可比? 不太可能吧.
- opinionated 和通用性是中性的, 无视趋势的通用性和过于小众的偏见都会损失用户. FastAPI 的流行说明它的确解决了一些用户痛点, 代表了相当一部分用户的实际需求.
- 假定 FastAPI 的方向是"正确"的, 如果 Flask 选择目前的定位, 那这样的比较和用户的流失是会长期存在的, 直到 FastAPI 更为流行, 两方的用户能够明确地"各取所需"为止. (此处 @frostming )

再提两句 @greyli 的原文, 我的核心意见, 还是"从用户角度, Flask 和 FastAPI 并不是不可比的":

- 首先说文中的靶子, 该文描述了 FastAPI 在编写 API 场景相对 Flask 的写法优势, 逻辑我认为是自洽的. 文中写: "你确定你用了四年的是 Flask 而不是 Flash ?" 难道, 在使用 Flask 编写 API 时, 并不是这样的吗?
- @greyli 认为两者虽然都很流行, 但是定位不同不能直接比较. 理论上这是对的, 但我认为是没什么意义的, 流行程度本就是非常重要的筛选器;
- 框架仅用于编写 API, 应该可以代表大部分使用者的场景(欢迎指正). FastAPI 的流行也印证了这一点;
- 文中提到的 FastAPI 的问题的确存在, 但次要. 文中提的文档中的"「大胆」的措辞和承诺以及不厌其烦的特性介绍", 这个不厌其烦, 怕是把各种推介者的搬运算上了吧? 一个精心设计的 readme 并不是负分项.

以及对 APIFlask 的推介:

- 非常赞同作者对自己心血的推介, 只是窃以为在此文中显得不太合适;
- 窃以为 marshmallow 不如 pydantic, 待 @greyli 了解评价一下.

最后是 @greyli 的一些答复:

> 我在那篇文章里没找到我表达过「 FastAPI 写法简洁」、「简洁的写法并不是 FastAPI 所独有的」这些观点

"FastAPI 写法简洁"是靶子文所表达的, "简洁的写法并不是 FastAPI 所独有的" 是我提议的如果想树立靶子, 则可以考虑论述的一个方向;

> Benchmarks

不反对技术层面对比的一致性要求.
258 天前
回复了 greyli 创建的主题 Python Flask 2.0 版本发布
作为一个 FastAPI 用得还算开心的用户, 并不苟同"如果看到有人把 Flask 和 FastAPI 放到一起比较,请把这篇文章的链接丢过去" (当然发那个帖子里比较合适, 顺手就发这儿了):

1. 如果用户本意就是要在流行的框架间比较呢? 从"流行的 python 框架" 角度出发, 一起比较并无不妥, 没必要理清楚衍生关系(基于某框架的某框架), 而从衍生关系出发, 把两个(至少是当下)流行程度和成熟程度不在一个量级的框架放一起比较, 反而怪怪的.

2. 强行区分 Flask 和 FastAPI 的一个前提, 就是 Flask 更"通用". 一方面, 从需求上说, 前后端分离的趋势下, 强调这么一点写 HTML 模板的能力的差异而强行说两者不能比较有点不妥, 另一方面, FastAPI 又不是不能用 template engine. 或者说, 这个 Flask 额外具备的通用性, 还有别的含义?

(还有一些对文章里描述的吐槽)

3. 文中的靶子, 原文开头就说明是一个 API 需求, 何苦强调那么一点"通用性"的差异而将其作为靶子立在那儿? 就算要立, 也该先论述一下 e.g. "这个 API 需求, 只是小部分的需求, 现实中我们用框架还要做很多别的事情, 而那些是 FastAPI 不能做的"?

4. 再说这个靶子, 原文写了 FastAPI 写法简洁的优势, 如果 APIFlask 可以做到类似的事情, 为何不正好 show 一下以论述 "简洁的写法并不是 FastAPI 所独有的"? 我感觉 marshmallow 并没有 pydantic 好用.

5. FastAPI 的推介者没有义务一定要从 FastAPI 是基于 Starlette 和 pydantic 的一个衍生框架这个角度来介绍, 开发者也没有义务一定要把这句话放在第一句, 技术背景放在 requirements 里很正常, 又不是刻意隐藏;

6. PR 里大量的文档翻译工作作为用户是喜闻乐见的(虽然我是看英文的), 虽然从开发角度看的确比较停滞.

所以, 我没有觉得这篇文章可以达到"如果看到有人把 Flask 和 FastAPI 放到一起比较,请把这篇文章的链接丢过去"的程度, 这只是"既然看到了 FastAPI, 也来看看 APIFlask 这个新项目", 文中立的靶子文章反而实在得很. 当然作者推介一下心血无可厚非, 第三方这么推, 不会只是因为标题这么写吧?
259 天前
回复了 shidenggui 创建的主题 分享创造 元思笔记 - 打造自生长的知识网络
@noe132 混出 64 瓶水, 现在有 2*8=16 瓶水有毒了, 6 只耗子能找的是 64 瓶水里一瓶有毒吧?
群晖 active backup 增量备份 整机还原
如果不是前端就业而且是做 admin, angular 不更顺手? ng-zorro, ng-alain 直接上就行
2020-12-18 13:25:26 +08:00
回复了 37422 创建的主题 推广 [特价+抽奖]YubiKey 5 NFC & Security Key NFC by Yubico
分母
关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1572 人在线   最高记录 5497   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 13ms · UTC 17:35 · PVG 01:35 · LAX 09:35 · JFK 12:35
♥ Do have faith in what you're doing.