父亲旧笔记本里的TypeScript

上周六整理阳台的储物箱,翻出个落灰的ThinkPad X230,黑壳子边角磨得露出银色的底,键盘缝里还卡着半片2019年端午的粽子叶。

爸爸那时候总说这个键盘敲着顺手,换了新工作站之后还舍不得扔,塞在储物箱最上层,连个防尘套都没套。

找了根闲置的Type-C转接头插电源,按了开机键等了快六分钟,进度条转得像他当年喝大麦茶的速度,慢吞吞的才跳出桌面——是我小学毕业去青岛拍的照片,他蹲在我旁边举着个挖沙铲,裤腿还沾着泥。

ThinkPad X230旧笔记本键盘磨损特写
ThinkPad X230旧笔记本键盘磨损特写

桌面正中间有个明黄色的文件夹,名字就叫”别碰”。我本来手贱想点,突然想起他2019年夏天跟我抢电脑写作业的时候,指着这个文件夹说,这里面是他熬了大半年的命根子,不许我乱改。

那个被标了”别碰”的文件夹

那个被标了
那个被标了”别碰”的文件夹

还是趁他下楼遛弯的功夫点开了。里面全是他当年的工作备份,一半是.vue后缀的前端项目文件夹,还有个单独的txt文档,名字直白到刺眼:TS踩坑记录2018.txt。

我那时候还不知道TS是什么,只当是他公司新出的什么内部工具,直到点开文档,第一行就写着:”今天把interface写成了Intreface,编译器报了三个小时的错,查了所有配置都没问题,最后才发现是大小写拼错了。比我家丫头考试写作文写错名字还离谱。”

说实话,我看到这里笑出了声。那时候他总吐槽我写作业粗心,原来他自己写代码也有这毛病。

他跟原生JS死磕的那两年

往下翻,文档里的碎碎念越来越多。有说”联合类型写了个竖线,少打了个空格,编辑器自动给我加了个不可见字符,报了个完全不相关的错,找了俩小时才发现”的,有说”为了兼容老项目,被迫写了一堆any,等于白用TS,还不如回去写JS”的,还有一行用红字体标出来的:”2018年10月17日,线上事故,用户年龄字段接口返回字符串”18″,直接跟数字比大小,整个用户列表页崩了一下午,扣了半个月奖金。这个锅,JS的弱类型要背一半。”

哦,原来这就是他开始学TS的原因。

2018年TypeScript联合类型报错终端截图
2018年TypeScript联合类型报错终端截图

我那时候上高二,每天下晚自习回家都快十点了,总能看见他坐在餐桌前敲键盘,旁边放着半杯凉透的大麦茶,屏幕上飘满了红色的波浪线。他那时候总骂骂咧咧,说写了快十年JS,闭包原型链啥的都摸得门清,公司突然要把所有老项目迁到TypeScript,等于让他把吃了半辈子的饭吐出来重新嚼一遍。

真的,我见过他把手里的中性笔往桌上摔,笔帽飞出去砸到了我放在旁边的数学练习册。那时候我还觉得他是在跟电脑较劲,直到后来我上大学学计算机,第一次接手公司的实习项目,把本该是number类型的用户id写成了string,导致整个权限校验模块崩了一下午,才突然懂了他当年对着满屏红波浪线的崩溃。

不过话说回来,他那时候虽然天天吐槽,却从来没真的放弃过。文件夹里还有个压缩包,名字叫”TS入门教程_同事发的_别删”,打开里面是个2017年的B站视频链接,还有个从GitHub扒下来的英文pdf,他在旁边用电子批注标了密密麻麻的小字,最显眼的一行就是:少用any,用了等于白写。

他从来没说过TS有多好

他从来没说过TS有多好
他从来没说过TS有多好

我翻完整个文件夹,没找到一句他夸TypeScript好用的话。没有什么”类型系统真的香””写TS效率高多了”之类的吐槽或者夸奖,只有一堆踩坑的记录,还有几个项目的备份,最近的修改时间是2019年11月,也就是他换工作站的前一周。

后来我问过他,学TS到底值不值。他那时候正在阳台给花浇水,头都没回,说”不是值不值的事,是省心。就像你上学的时候带个错题本,哪里错了提前给你标出来,不用等到考试的时候才哭。”

对吧?其实就是这么简单的道理。我之前总觉得这些程序员折腾出来的类型系统,都是没事找事,直到自己踩过一次坑,才明白那些提前弹出来的类型提示,不是麻烦,是有人提前给你挡了一次可能的事故。

后来我把那个旧笔记本重新塞回了储物箱,把那个”TS踩坑记录2018.txt”拷到了我的云盘里。现在我自己写前端项目的时候,还是会偶尔图省事用any,还是会碰到那些莫名其妙的类型报错,有时候改着改着就会想起2018年的那个晚上,爸爸坐在餐桌前,凉掉的大麦茶,键盘缝里卡着的粽子叶,还有他对着屏幕骂骂咧咧的样子。

哦对,上次回家的时候我问他,现在还写TS吗?他说早就不写了,现在公司的项目都交给年轻人了,他每天就浇浇花遛遛弯。不过我上次去他书房找书,看见他的新电脑桌面上,还有个文件夹,名字叫”TS新特性笔记2023″。

他没提过。我也没问。

作者|大讲堂

排版|大讲堂

审核|满满

免责声明:市场有风险,选择需谨慎!此文仅供参考,不作买卖依据。如有侵权请联系删除。
文章名称:父亲旧笔记本里的TypeScript
文章链接:https://m.lfdjt.com/info_23_28305.html