同是静态类型检查,为什么 Python 圈对 Type Hints 的重视程度明显不及前端圈对 TypeScript 的重视程度?

2019-10-08 12:45:22 +08:00
 szzhiyang
6937 次点击
所在节点    程序员
68 条回复
reus
2019-10-08 12:53:51 +08:00
请定义“重视”
iyaozhen
2019-10-08 12:55:58 +08:00
主要是 Python 的 Type Hints 可用可不用,就像写注释一样,很麻烦,很难约束。
但 TypeScript 基本上是换了语言,要用都得用了
Mohanson
2019-10-08 12:56:23 +08:00
type hints 是类型 “标注”, 不是检查, 目前来讲 hints 相当于注释。
laike9m
2019-10-08 12:58:42 +08:00
随着大部分公司抛弃 py2,未来 type hints 会逐渐普及的
szzhiyang
2019-10-08 13:02:49 +08:00
@reus 与前者相关的讨论、文档和博文明显少于后者,与前者配套的工具链明显逊于后者。
abcbuzhiming
2019-10-08 13:07:11 +08:00
前端圈为啥重视 TS,说白了就是因为前端的项目越来越复杂,复杂到一个人在工作量上搞不定,必须和人协作,和人协作这个痛点逼迫大家不得不正规化,动态脚本的痛点在需要和人协作时暴露的非常明显,这才是 ts 在前端攻城略地的原因。而 python 大部分人都是用来写一些小工具,当然没那么讲究。只有痛彻灵魂,才会引起改变,几年前前端圈的 js 脚本小子讨厌 ts 的类型约束的人少了吗?说白了是被现实打脸抽痛了,才会明显类型约束的重要。否则的话 var 一把梭多舒服,这样想的人有的是
LokiSharp
2019-10-08 13:07:50 +08:00
等 py4 出来 type hints 不再是注释之后就会普及了
XIVN1987
2019-10-08 13:10:14 +08:00
Python 永远都是动态语言,Type Hints 只是为了统一类型标注语法,从而方便在不同的编辑器中实现自动补全
optional
2019-10-08 13:12:17 +08:00
TypeScript 不仅仅是 type hints.
ps1aniuge
2019-10-08 13:19:21 +08:00
围观,我对 python 癌症的吐槽 https://www.cnblogs.com/piapia/p/11175865.html
szzhiyang
2019-10-08 13:31:11 +08:00
@abcbuzhiming 有道理,不过工程复杂且需要多人协同完成的 Python 项目应该也不少吧,毕竟也有不少公司用 Python 写后端。
szzhiyang
2019-10-08 13:33:32 +08:00
@optional 嗯嗯,我知道的。
whileFalse
2019-10-08 13:50:24 +08:00
@LokiSharp 然后 py3 和 py4 又并行多年。
abcbuzhiming
2019-10-08 14:06:47 +08:00
@szzhiyang 绝对数量上,肯定不少,但是要谈比例,你应该听过那句话:python 后端在现在就是不入流,它能写,但是旁边 java,php,go 甚至 node 都斜着眼睛看着你。python 用的最多的地方还是科学计算,数据分析,一般都是小型脚本,个人完成
gamexg
2019-10-08 14:09:16 +08:00
后端如果强依赖于静态类型,可以直接换成其他的强类型语言。
而前端没得选,只能强化 js。
aptx4689
2019-10-08 14:16:28 +08:00
@ps1aniuge 这文章写得毫无水平,且不论文章错字一堆,很多问题无非是作者水平没达到。

开头的“仅从 shell”角度出发,到后面也开始随心所欲想写啥就写啥,充斥个人牢骚。

且不论你用个破解还大言不惭写上去当成缺点,连文档中文英文也要批判一番了。
ChristopherWu
2019-10-08 14:26:39 +08:00
@laike9m #3 主要是 type hints,py 官方不支持强校验。。。
neoblackcap
2019-10-08 14:39:20 +08:00
我认为 Python 的 Type Hint 并不是很重要。有没有其实也差不多。
后端业务成熟了,稳定了本来就会进行重写。重写可以用更高效的语言,毕竟稳定的业务就相当于基础组件。静态语言类型都是强制的。
momocraft
2019-10-08 14:41:27 +08:00
py 不够混乱
wysnylc
2019-10-08 14:42:46 +08:00
@abcbuzhiming #6 说到点了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/606977

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX