我个人非常讨厌 TS,奈何现在很多第三方库都在使用 TS 了,所以也不得不接触,平时看代码的时候看到一坨坨冗长的类型定义,真的看得非常累..
1
myd 2020-04-09 23:06:52 +08:00 2
我不是一个人
|
2
wunonglin 2020-04-09 23:11:04 +08:00 32
只恨 ts 不能取代 js
|
3
fancy2020 OP 另外,丑倒是还其次,关键严重影响可读性。。核心逻辑代码都被隐藏在一坨坨的类型定义中了
JS 好好的一个动态语言被硬生生掰成静态语言,这合适吗! #旗帜鲜明的反对 TS# |
4
murmur 2020-04-09 23:16:54 +08:00 1
是很丑,这不是说语言的问题,是非得要特性就造新语言,有 java 有 c#的模板不用,非得单独发明一套语法,都是强类型,大家长的都差不多,然而长的又不一样
|
5
XanderChen 2020-04-09 23:17:35 +08:00
所以 ts 说的是 typescript 吗?
|
6
maomaomao001 2020-04-09 23:20:04 +08:00 via Android 1
也不丑吧,很多类型都会自动推断了,
|
7
EPr2hh6LADQWqRVH 2020-04-09 23:21:41 +08:00 5
我个人非常讨厌 JS,奈何现在不愿意学 TS 的人太多,所以也不得不接触,平时看代码的时候看到一坨坨层层叠叠的嵌套函数调用穿插对象定义,真的看得非常害怕..
|
9
cmdOptionKana 2020-04-09 23:27:11 +08:00 2
python 和 php 都官方直接加上了 type hint,ruby 也计划加上。另外较受欢迎的新语言 kotlin, go, swift, rust, dart 等无一例外都是静态类型。也就是说,这些语言全都有 “一坨坨冗长的类型定义”。
美丑很主观,但业界这样发展、语言大牛和大公司这样的选择,应该可以说明 “一坨坨冗长的类型定义” 比简洁的动态类型语言有优势。 |
10
pursuer 2020-04-09 23:27:40 +08:00
有好用的 IDE,ts 的使用体验会很好
|
11
SilencerL 2020-04-09 23:27:59 +08:00
非常非常丑, 建议楼主不要用 TS, 真的太丑了
|
12
chihiro2014 2020-04-09 23:28:09 +08:00
其实还好吧,作为后端人员表示 ts 还是蛮香的
|
13
qiguai2017 2020-04-09 23:28:15 +08:00
确实很不习惯 TS 的类型定义
|
14
fancy2020 OP @cmdOptionKana 感谢~你说的这个论点很客观,我思考一下
|
15
Yelp 2020-04-09 23:36:46 +08:00 via iPhone 1
以前俺也觉得,直到遇到了 Go 和 VSCode
|
16
Kahnn 2020-04-09 23:41:01 +08:00
作为一个 Java 后端,现在刚开始用 TypeScript,觉得还不错啊,虽然类型声明在后面有点不太习惯
|
17
janxin 2020-04-09 23:41:25 +08:00
没办法,我觉得丑的地方 js 也是这么丑
|
18
Perry 2020-04-09 23:44:41 +08:00 1
等你有一天工作看到屎山 JS 代码库的时候你是不是又要说 TS 香?
|
19
VDimos 2020-04-09 23:50:50 +08:00 via Android 1
ts 可比乱写的 js 好看多了
|
20
crella 2020-04-09 23:51:09 +08:00 via Android
主要是在浏览器内只能用 js (在没有 webassembly 之前)
所以只能在 js 的基础上修修补补喽。 |
21
Tink 2020-04-09 23:51:49 +08:00 via iPhone
确实那一大坨类型声明看的心累
|
22
Conda 2020-04-09 23:53:05 +08:00
是丑还是不愿意学呢? 个人觉得 TypeScript 给了 js 新的生命
|
23
fancy2020 OP 最烦的就是,很多人认为讨厌 TS 的人===没用过静态类型语言的。
本人工作 12 年,刚开始工作做过 5 年 C++游戏后端,所以我明白静态语言有哪些好处,我更明白动态语言有自己的特点, 不喜欢一门好好的动态语言被静态化。 |
25
zzzzzzggggggg 2020-04-10 00:04:43 +08:00
可能是不习惯
|
26
tinycold 2020-04-10 00:05:51 +08:00 via Android 3
The Shy 的剑魔的确强,至于代码我没看过不好评价。。
|
27
charlie21 2020-04-10 00:12:06 +08:00
谁叫你盯着看了?
|
28
2kCS5c0b0ITXE5k2 2020-04-10 00:14:07 +08:00
有一说一 类型定义很喜欢。 我写 php 都习惯加上类型定义.
|
29
cmdOptionKana 2020-04-10 00:14:46 +08:00
@fanchangyong 并不是动态语言被静态化。
1. TS 本质上是另一门语言,它不是 JS,只是为了获得 JS 的生态而对 JS 做了一些兼容。 2. 由于个人电脑的性能与前端技术的发展,现在 JS 需要承受的负荷已经与它刚被发明出来时不一样。动态语言是好,但它只适合中小型项目,而现在前端项目已经变得非常复杂。 如果 JS 是现在被发明出来的,它更可能是静态类型,而不是动态类型。 |
30
gouflv 2020-04-10 00:18:28 +08:00 via iPhone
楼主这样的应该叫做 脚本男孩
|
31
nvkou 2020-04-10 00:21:02 +08:00 via Android
工程量的问题吧。
如果 js 止步于网页脚本,它是十分轻便称职的。 现在又要用来写工程。那它必须要面对分工,解耦等各种前人的坑。 个人还是十分不愿意看到嵌套太深,就地 function 的恣意妄为风格 |
32
love 2020-04-10 00:57:11 +08:00 via Android
静态类型真香
不过 ts 类型灵活性比 java 强太多了,导致复杂的类型定义比较难读。 |
33
tyrealgray 2020-04-10 01:12:14 +08:00
会用 TS,但是真不喜欢那模版定义类型的写法。比 C++的模版格式感觉远了,确实写多了就觉得 ts 的看起来很丑
|
34
JackWolf001 2020-04-10 01:24:55 +08:00 via iPhone
ts 语法相对 c,java 一开始看起来是挺累的,习惯了就还好
|
35
ppphp 2020-04-10 01:46:19 +08:00
一点也没觉得影响可读性了,引入新的库,加上类型一眼就能看出来容器的方法,以前新上手一个库,javascript 完全抓瞎,现在 typescript 能让我一天上手 angular,react,楼主应该换一个支持 ts 比较好的编辑器了,其实这些对我来说都没有 css 难写。。。。
有 void*和多态,包括类型写变量前面的语法,导致我觉得 c++非常不好看懂。。。 |
36
ochatokori 2020-04-10 01:46:47 +08:00 via Android
运行一下 tsc 就可以把类型去掉看你喜欢的 js 了
不过一般发布的库都是导出 js+.d.ts 不会直接导出 ts 吧 |
37
yech1990 2020-04-10 06:00:34 +08:00 via Android
其实你只要把类型注释的 syntax 颜色改成灰色就行,能极大提升阅读的体验。
|
38
wuhanchu 2020-04-10 08:05:38 +08:00 via iPhone
同样不喜欢 ts 但是如果你们开发大项目还是建议上。新生的 js 写起来才是真的丑
|
39
kios 2020-04-10 08:10:17 +08:00
TypeScript 很好用啊 怎么丑了
|
40
fancy2020 OP 大型项目上 TS 可以理解,但是现在很多几百上千行的项目也用 TS 我就理解不了了
|
41
April5 2020-04-10 08:41:59 +08:00
你自己写代码想怎么写无所谓,但如果你的代码可能要给人接盘的,和人协作的,那 ts 和你的项目几行几百行几千行关系并不大,搭个环境又不难,又有 sourcemap,至于丑,见仁见智,这并不能妨碍大家使用它。
|
42
Yumwey 2020-04-10 08:45:22 +08:00 via Android
你不是觉得丑,你是觉得写的太多了😄
|
43
oahebky 2020-04-10 08:47:09 +08:00
“冗长的类型定义” 你平时写 python ?
哈哈哈哈哈哈哈哈哈 |
44
oahebky 2020-04-10 08:49:05 +08:00 2
我个人坚信语言往静态发展是倒退。往动态发展是进步。
谈不上大道理,就是自觉。 |
45
oahebky 2020-04-10 08:49:37 +08:00
直觉
|
46
orzorzorzorz 2020-04-10 08:55:41 +08:00 via Android
无他,ts 给我安全感,毕竟我老是把变量名拼错又得花好久调试。你嫌难看可以用 any,不难看的写写类型也无妨。
|
47
zhw2590582 2020-04-10 08:55:41 +08:00
我觉得 TS 自己写的话就很好,但是看别人写的 TS 的话就很纠结
|
48
islxyqwe 2020-04-10 09:02:27 +08:00 1
TS 的类型是倾向于函数式的,还要用 class 等 OO 的来编写 ts 才会变丑吧。大部分类型都是自动推导的
同事之前用 class 写的 react 组件我也根本看不下去,用 hook 写好多了 |
49
drydiy 2020-04-10 09:05:39 +08:00
我跟你相反。在用 TS 实践了两个项目后,非常喜欢 TS 。
|
50
sheaven 2020-04-10 09:06:14 +08:00 via Android
@cmdOptionKana go 可以不事先定义类型
|
51
keelii 2020-04-10 09:14:22 +08:00
ts 丑?那 java 呢?
|
52
nfyig 2020-04-10 09:14:45 +08:00
ts 是增加可读性的, 当然是看你怎么去写了, 你如果没有用到 ts 的面向对象的特性, 写出来的代码当然丑了....
|
53
ymcz852 2020-04-10 09:15:25 +08:00 3
怎么很多人把用 js 就认为写 shit,太片面了,难道不是看写代码的人嘛,ts 改善的也只是浅层而已,shit 还是 shit
中小型项目还是直接用 js 了,写起来爽很多,这就够了,不想丢弃动态语言的快捷性 只希望不要刻意上 ts,ts 有它适用的方面,但也有不适用的方面 |
54
raymanr 2020-04-10 09:16:12 +08:00
我也不是很喜欢 TS, 从 C# 转 python 没有推断不习惯了很久, 现在终于习惯了, 你又让我回去写网页版的 C# ?
|
55
cmdOptionKana 2020-04-10 09:25:23 +08:00 1
@oahebky 时代变了,IDE 的影响很大,在现代 IDE 的支持之下,动态类型语言还有什么优势?
|
56
fancy2020 OP @April5 按你这种说法,只要有人协作的项目都不能用 js 了?那 js 就只能自己玩玩写写 demo 了
|
57
chouchoui 2020-04-10 09:28:51 +08:00 5
希望接下来的前端发展能快速淘汰不接受 ts 的开发人员
|
58
miniwade514 2020-04-10 09:29:17 +08:00 via iPhone
写类型其实就是在设计 API,好处是很多的
|
59
lneoi 2020-04-10 09:30:21 +08:00
丑,还啰嗦...还兼容 js 本身一些历史遗留..
当年全新语言没替代 js 成功、编译型的也没落了,TS 在这一众跑到了最后,算是当前场景下最好的方案了 |
60
creanme 2020-04-10 09:34:21 +08:00 1
主要它兼容 js,弄得类型非常复杂,有点烦,我宁愿它不兼容 js 。
|
61
vagary 2020-04-10 09:35:41 +08:00
有句话咋说来着,不管白鼠还是黑鼠,能抓着猫就是好年。
|
62
simo 2020-04-10 09:35:59 +08:00
多了解几门语言,感受可能会不一样。
仅限于 js 的话,经历过 js 标准的演变,应该会庆幸从 es6 开始学 js 是多么幸运。 |
63
yhxx 2020-04-10 09:48:30 +08:00 3
不喜欢+1
感觉把 js 搞成这样还不如去写 Java 或者 C# 但是现在 ts 是政治正确 |
64
paoqi2048 2020-04-10 09:53:10 +08:00
你好像有点急
|
65
Hanggi 2020-04-10 09:56:43 +08:00
不是开玩笑,你得改变下心态了,TS 真的很香。
|
66
geshansuiyue 2020-04-10 09:57:33 +08:00
我倒是挺喜欢的 代码提示也比写 js 好用很多。
|
67
oahebky 2020-04-10 09:57:44 +08:00 5
@cmdOptionKana #55 原文:“@oahebky 时代变了,IDE 的影响很大,在现代 IDE 的支持之下,动态类型语言还有什么优势?”
====== 回复:因为我不写 java,所以你说的 IDE 影响很大我不清楚意思。 但是编程未来是越往类型的本质靠拢的。也就是所谓的走起来像鸭子、叫起来像鸭子,那么它就是只鸭子。 - 不论是内置的不同类型还是自己新建类型,只要实现了迭代,就可以被迭代的关键字语法或函数迭代地调用。 - 只要实现了字典操作 _dict['key'],那么不论是内置类型还是自己新建类型,都可以这么用。 这就是动态类型的特点之一。 所以说,我期待的未来是学习语言不再是 int 、string 、byte ( char )、point 类型 (<-- 内存视角)。 而是这个语言支持哪些行为,如:iterator,slice,hash 。然后该语言提供了哪些内置语法可以创建变量支持某种行为;而支持这些行为往往等同于实现了数据结构。 即学习和编程的时候是从数据结构的视角,学习 iterator,slice,hash 等行为来操作数据结构。 当自己创建类型的时候,往往是对数据结构做一种修改,拓展,定制。 而不是像静态语言一样对内存做一种组合,然后再编写一堆方法来(支持)操作这个组合内的某一个数据。 |
69
lk920724 2020-04-10 10:05:47 +08:00
建议看下 Objective-c 你不会疯掉吧( doge.png )
|
70
cmdOptionKana 2020-04-10 10:06:03 +08:00
@creanme 当年不兼容 js 的想取代 js 的语言有很多,比如第一代 Dart,但根本没人用。ts 兼容 js 是它最终胜出的最大原因。
最近我用 Dart 的编译至 js 功能写了一个页面,非常好用,而且用起来完全符合 js 的习惯,同时获得了类型安全的好处。可以说 Dart 就是你说的 “宁愿它不兼容 js” 的样子,它很优雅,但你不会去用它来写网页,因为它不能方便地使用 npm 里的库。 |
71
mitu9527 2020-04-10 10:07:37 +08:00
语法只有烂不烂,没有丑不丑一说,一万种语言就有一万种不同的语法。与其纠结语法丑不丑,不如想想为什么 js 会需要 ts 。js 主要是用来开发上层应用的前端部分的,要靠面向对象去支撑越来越复杂的表现层逻辑,所以 js 需要的是 ts 的面向对象。其实 es4 的时候就转面向对象和静态类型了,但当时开发者们对面向对象不感兴趣,太超前反而失败了,这才让 ts 捡了一个大便宜。前端面向对象化是大势所趋,不知道 js 会不会再次推出自己的面向对象,到时候前端又是一场大混战,估计又是微软引发的。以前是 jsscript,现在是 ts,微软在 web 这块非要引领,从来就不想和其他公司携手前进呐。
|
72
fancy2020 OP @lk920724 其他语言再烂也不关我事,因为我用不到。但我写 JS,现在很多第三方库用 TS 重写,导致我间接的不得不用 TS 了,这就很不爽
|
73
jsjgjbzhang 2020-04-10 10:09:17 +08:00
先接触 ts 后接触 js 的我是不是异类
|
74
cheeto 2020-04-10 10:16:09 +08:00
#营销炒作 ts,拒绝倒贴我家 js#
|
75
Curtion 2020-04-10 10:19:39 +08:00
我挺喜欢的,比较不喜欢 python 这种,很丑
|
76
BOYPT 2020-04-10 10:21:55 +08:00
审美观差别巨大(
|
77
cmdOptionKana 2020-04-10 10:21:58 +08:00 10
@oahebky 鸭子类型最大的问题在于,这只动物不走、不叫(即不动、程序不运行)的时候,你不知道它是什么动物。
也就是说,静态分析难度大。 就算让它走了、叫了(即,在运行时),前面运行得好好的,看起来像极了鸭子,后面偶尔有一段代码要求它拍翅膀,这才发现它虽然走起来像鸭子、叫起来像鸭子,却没有翅膀!程序抛出异常。 当一个程序越来越大的时候,一个动物(类、对象)的特性就越多、越复杂,偶尔发现它不是想要的动物的情况就会很多,多到项目失控。 静态语言的好处是,静态分析轻松,只要声明它是鸭子即可,它不管去到多么复杂的系统里都能一眼看出来就是鸭子,不需要它把全部动作都做一遍(程序不需要运行,直接静态分析),一边写程序一边有精确的提示,重构的时候极方便,不容易出错。 |
79
Torpedo 2020-04-10 10:31:27 +08:00
觉得代码丑,那不应该好好写类型,整理下代码么?
|
80
augustheart 2020-04-10 10:35:54 +08:00
ts 是的出现,是像 js 这种从内到外都是小玩具却要强撑着盖大楼的语言的必由之路……
所有的变化都是为了适应大项目多人合作。 |
81
ironMan1995 2020-04-10 10:36:32 +08:00
前些年的全网言论还是 JS 作为弱类型语言是它优点,现在又变了???
|
82
qiaobeier 2020-04-10 10:38:40 +08:00
超级丑的 ts 屎山和超级乱的 js 屎山的区别。都是屎山没差啦。
|
83
Torpedo 2020-04-10 10:41:04 +08:00
PS:楼主贴的文章,在我见过反对使用 ts 的文章里,水平最低的一篇。。。
|
85
ironMan1995 2020-04-10 10:42:55 +08:00
如果 TS 能够解决你的问题就用,很多人都受益于 TS ;如果你觉得 TS 不能带来好处,那不用也行。不要因为别人都在用你就用,不要因为这个“比较热”你就跟风去用。前端鄙视链,现在已经有用 TS 鄙视用 JS 的趋势了
|
86
augustheart 2020-04-10 10:44:19 +08:00
@ironMan1995 这点依然是优点吧,但是你的优点不见得是别人的优点啊。
比如我写 c++的时候特别喜欢用模板,只要有可能重用算法的地方我都会写个模板,结果上次被合作的哥们给吐槽了…… 语言对个人来说想怎么用就怎么用,但是如果涉及到多人合作,就得面临各种妥协了。比如谷歌的 c++规范,都妥协成什么鬼样子了…… |
87
fancy2020 OP @ironMan1995 如果可以做选择当然我不 Care 会出现什么 TS 还是 BS,关键 TS 的侵入性太强了,不像 Flow 等工具把类型的定义单独放,看很多第三方库代码的时候不得不读 TS 。所以会有种被强迫使用 TS 的感觉
|
88
lihongming 2020-04-10 10:50:47 +08:00 via iPhone
Java 过来的我表示也不喜欢 TS,不伦不类的。
既然是另一门语言了,既然需要编译才能运行了,何不直接使用 Java ?把 Java 编译成 JavaScript 不香吗? |
89
oahebky 2020-04-10 10:59:01 +08:00
@cmdOptionKana #77 原文:“@oahebky 鸭子类型最大的问题在于,这只动物不走、不叫(即不动、程序不运行)的时候,你不知道它是什么动物。也就是说,静态分析难度大。就算让它走了、叫了(即,在运行时),前面运行得好好的,看起来像极了鸭子,后面偶尔有一段代码要求它拍翅膀,这才发现它虽然走起来像鸭子、叫起来像鸭子,却没有翅膀!程序抛出异常。当一个程序越来越大的时候,一个动物(类、对象)的特性就越多、越复杂,偶尔发现它不是想要的动物的情况就会很多,多到项目失控。静态语言的好处是,静态分析轻松,只要声明它是鸭子即可,它不管去到多么复杂的系统里都能一眼看出来就是鸭子,不需要它把全部动作都做一遍(程序不需要运行,直接静态分析),一边写程序一边有精确的提示,重构的时候极方便,不容易出错。”
====== 回复: 我没有说静态语言完全没有好处。 我说的是“我个人坚信语言往静态发展是倒退。往动态发展是进步。” 我的意思也就是说,对于你说的动态语言问题,思路是通过进化编译器逐渐解决,也就是进步。 但是因为动态语言有这个问题,就退回到没有这个问题的静态语言上,那么静态语言要怎么进步呢?不就是泛类型化 -- 往动态性演变。“最终还是变成一个拥有动态语言(语法)的静态编译器”。 静态语言不是因为你一眼看出来是鸭子,是鸽子所以不容易出错(编译器报错)。 而是因为你把时间花在查看源码实现,以及实现给鸭子安上火箭推进器上。 而不是像动态语言一样可以“凭感觉”写,把鸭子的声线和鸭掌按倒火箭推进器上,然后把这个火箭推进器返回(鸭子变成了火箭推进器)。 如果你写动态语言也一样对一个变量追到它的创建,修改,销毁一生的流程,那么同样可以写出不容易出错的代码。 |
90
g00001 2020-04-10 11:01:09 +08:00 1
TypeScript 是不错,但是 TypeScript 导致一种错觉 - 静态类型就一定好,静态类型也是有许多缺点的 - 例如看似强大其实也会笨拙麻烦的 C++ ,只是在太过散漫自由的 JavaScript 世界里,TypeScript 有压倒性的优势。例如 JavaScript 的智能提示 - 没有一个开发环境能做得令人满意,但是 TypeScript 就可以完美的解决这些问题。
例如同样是动态语言的 aardio,有一个庞大且规范统一的标准库,语法针对智能提示做了专门的优化,仅仅只有 6.5MB 的开发环境,但是智能提示可以做到如此利索: 如果 JavaScript 也有一个如此庞大且规范统一的标准库,语法重新设计针对开发环境提前做好优化,能带来利索的智能提示,那么 TypeScript 可能就不再有压倒性的优势。 |
91
jarenduan 2020-04-10 11:01:28 +08:00
@oahebky
- 不论是内置的不同类型还是自己新建类型,只要实现了迭代,就可以被迭代的关键字语法或函数迭代地调用。 - 只要实现了字典操作 _dict['key'],那么不论是内置类型还是自己新建类型,都可以这么用。 C# foreach 实现方式类似, 索引属性也类似. C#是静态类型语言. 这些特性和是否动态类型没有关系. 动态类型不等于弱类型, 通常指在运行时进行类型检查, 它也是基于类型的. 所以不存在动态类型语言是基于"行为"的这种说法. 运行时检查的最大问题是没有编译器帮你事前发现潜在 bug. IDE 也没办法给你智能提示. 你拿到新类库以后, 也不知道调用什么, 返回什么, 属性方法怎么拼写, 必须强度依赖文档. 重构实现也非常难或者效率低. 这更多程度是软件工程范畴的问题. 搞过 C++的这些应该深有体会啊. |
92
optional 2020-04-10 11:05:16 +08:00 via iPhone
引用文章质量太差,不是英文就是好文章的
|
93
fancy2020 OP 个人觉得通过编译器能检查出来的 bug 通常都不是啥大问题,写 C++的时候遇到最多的应该是空指针(也就是运行时错误)。
其实原生 JS 加上合适的 lint 已经能发现大部分低级错误了。 |
94
coldsnap 2020-04-10 11:06:32 +08:00
楼主你后续附上的文章,所有标题的观点都站不住脚。我怀疑作者本人也不这么认为,只是他觉得这样写可能会火。
|
95
fancy2020 OP 比较认同文章里的这几点:
Typescript is not standard People only use Typescript because they are used to OO languages Flow is better 其他观点确实站不住脚。。 @coldsnap |
96
iyeatse 2020-04-10 11:09:31 +08:00
js + jsdoc + vscode 一样可以实现类似 ts 的类型系统,小工程用起来还是很爽的
|
97
augustheart 2020-04-10 11:11:54 +08:00 1
@oahebky 你说的这个只是接口的作用吧,动态语言的内部,追究到字节码虚拟机 jit 什么上面,其实还是静态语言那一套东西。
基本上到今天,动态语言和静态语言的区别就是同一个变量 3 秒钟之前是鸭子,3 秒钟之后它又可以变成狗,而在静态语言里面鸭子一辈子都是鸭子。这个才是它们唯一的区别(纯个人体会) |
98
dogfeet 2020-04-10 11:15:29 +08:00
以题主链接中的片段为例:
|
99
dogfeet 2020-04-10 11:23:27 +08:00
以题主链接中的片段为例:
```typescript function factorial (n: number): number { if (n == 0) return 1; return n * factorial (n-1); } ``` 在 js 中,不看完这个函数,你知道调用的时候可以传什么参数进去吗? string 支持不支持?返回值是什么类型? js 中这个函数最后类型还是会在注释中描述出来。 复杂点的例子就是支持 uniontype 的时候,js 就更吃力,注释里面往往大段还说不清楚,必须跟到代码逻辑中才能确定。 更吃力的是,js 代码你在看的时候想跟进去看,你的编辑器跳转的根本没法保证正确,有时候跳对了地方,有时候又不是。最后你也不敢完全相信编辑器的跳转。只能自己不停的在脑子中过一些没必要的逻辑。 ts 正是因为比较严格的类型系统,编辑器能准确的跳转的函数定义的地方,真的跟起复杂项目的逻辑得心应手。 看代码,不是看字符串多少,是理解逻辑脉络。ts 这方面绝对是甩 js 几条街。 其他什么重构就不说了。 |
100
sankooc 2020-04-10 11:31:30 +08:00 1
你不是一个人
|