henryhu
V2EX  ›  Node.js

Typescript 越来越流行吗?我觉得它带来的收益还是小于成本,对于已经存在的项目,没有必要使用 TS

  •  
  •   henryhu · Feb 4, 2021 · 3274 views
    This topic created in 1970 days ago, the information mentioned may be changed or developed.
    11 replies    2021-09-06 12:00:14 +08:00
    zy445566
        1
    zy445566  
       Feb 4, 2021
    个人使用是这样,但是团队或库用 ts 肯定更好,这样别人使用你的方法的时候一看编辑器的提示就知道该传什么参数,类型是什么。减少一些沟通成本。
    henryhu
        2
    henryhu  
    OP
       Feb 4, 2021
    对于写代码的人比较友好,能提高效率,但是转换成本高,包括第三方库的问题、调试的问题,隐形成本不低。可能多数项目并值得上 ts
    rbe
        3
    rbe  
       Feb 5, 2021
    @henryhu #2 恰恰相反,对写代码的人来说是一种负担,因为要额外写很多类型声明,因此有很多人直接把他玩儿成了 anyscript. 反而对于看代码 /维护代码的人来说是极其友好的,如果要维护别人的 js 代码, 一个函数原型写着 getFoo(data) {},你连他的入参出参都把握不了,假如这人还离职了那更是一团没有人敢维护的 shit code 。用上 ts 在很大程度上能解决这个问题,比如前段时间使用 aws 的 jsSDK,都不用太翻来覆去找他的文档就能知道各个方法大概是干啥的。
    zhangxh1023
        4
    zhangxh1023  
       Feb 5, 2021
    在公司项目中(由于只有我一个人, 所以我说了算🐶)用了一次 ts, 说实话, 有点后悔. 主要是项目没那么复杂, 最后写起来四不像. 可能是自己的水平有限, 自己也懒得优化, 又不是不能用.....
    但是自己用 ts 写的小项目感觉很香🐶🐶
    henryhu
        5
    henryhu  
    OP
       Feb 5, 2021
    @rbe 对读代码的人友好,也是对写代码的人友好,经常读、写都是同一人,就算自己写的代码自己改的时候也是经常来回查看。
    henryhu
        6
    henryhu  
    OP
       Feb 5, 2021
    看过一篇文章,说是小的项目可以上 ts,对于复杂项目反而不推荐,这个结论有点出乎意料啊
    zqjnew
        7
    zqjnew  
       Feb 8, 2021 via Android
    可以的的,我也正在学
    zqjnew
        8
    zqjnew  
       Feb 8, 2021 via Android
    可以的,我也正在学
    realkenshinji
        9
    realkenshinji  
       Feb 15, 2021
    前阵子在德国这边面试,面的 node.js 的职位,基本都要求 TS 了,这个貌似是大趋势
    windmemory
        10
    windmemory  
       May 12, 2021
    Typescript 其实是给了 Javascript 一个很好的静态约束,我们公司所有的项目都是用了 Typescript 的。
    我觉得无论是大项目还是小项目,都应该上 Typescript,好处有 3
    1. VSCode 支持 Typescript 的类型推断,如果你定义好了类型,那么在任意的文件里面你都能看到当前的值是什么样的,不需要一点点找变量声明的地方
    2. 减少低级错误,如果是 Javascript,如果一个 Object 里面某个值的 key 里面有 typo,那么 Javascript 一般是不会报错的,但是如果用了 Typescript,就会在运行前直接报错出来
    3. 对于长时间维护的项目,减少对于旧代码的回忆成本
    fernandoxu
        11
    fernandoxu  
       Sep 6, 2021
    可以先 //ts-check + jsdoc 先用上 ts 的检查
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2683 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 62ms · UTC 10:24 · PVG 18:24 · LAX 03:24 · JFK 06:24
    ♥ Do have faith in what you're doing.