V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
hfpp2012
V2EX  ›  推广

2020 年为什么要学 TypeScript?我用代码告诉你!

  •  
  •   hfpp2012 · 2020-02-02 13:31:25 +08:00 · 6894 次点击
    这是一个创建于 1517 天前的主题,其中的信息可能已经有所发展或是发生改变。
    37 条回复    2020-02-04 12:18:15 +08:00
    Xiweini
        1
    Xiweini  
       2020-02-02 13:39:40 +08:00
    JS 里,把所有隐式转换的地方显式写出来就行了, TypeScript 没什么用
    hjdtl
        2
    hjdtl  
       2020-02-02 13:58:52 +08:00
    楼主,我记得有个 R 什么的教程网站也是你的吧?听声音挺像的
    Ultraman
        3
    Ultraman  
       2020-02-02 14:02:26 +08:00   ❤️ 1
    因为学它的人越多,教它的人就有越多机会?
    pythonee
        4
    pythonee  
       2020-02-02 14:07:13 +08:00
    ts 目前有哪些热门项目和应用?
    lovedebug
        5
    lovedebug  
       2020-02-02 15:55:28 +08:00
    什么时候成了 EMCAScript 标准再谈吧。
    youngxhui
        6
    youngxhui  
       2020-02-02 16:15:20 +08:00
    @pythonee Angular
    YuTengjing
        7
    YuTengjing  
       2020-02-02 16:30:47 +08:00
    禁止套娃
    beginor
        8
    beginor  
       2020-02-02 17:10:06 +08:00 via Android
    @pythonee 现在几乎所有流行的的 js 类库都提供了 tsd 定义, 前端三大框架都支持用 ts 开发, 还不够么?
    binaryify
        9
    binaryify  
       2020-02-02 17:22:07 +08:00
    ts 真的好用,真的不是只是加了类型而已,代码提示真的精准,不会担心会改出什么问题了,用第三方库也不需要看文档了,加个点有什么方法属性一目了然
    xulolololololo
        10
    xulolololololo  
       2020-02-02 17:54:34 +08:00 via Android
    先活下来再说
    hfpp2012
        11
    hfpp2012  
    OP
       2020-02-02 17:56:56 +08:00
    hfpp2012
        12
    hfpp2012  
    OP
       2020-02-02 17:57:38 +08:00
    @pythonee nest 和 angular 可以吗
    hfpp2012
        13
    hfpp2012  
    OP
       2020-02-02 17:59:20 +08:00
    @xulolololololo 这么悲观呀?
    qq544230987
        14
    qq544230987  
       2020-02-02 19:32:40 +08:00
    我是一个天生追求自由的人
    Sapp
        15
    Sapp  
       2020-02-02 19:36:31 +08:00
    @Xiweini 恰恰相反,我认为可以放弃 js 全面转像 ts, 就算你不考虑重构,也不写多复杂的代码,单单是类型提示参数提示和校验都可以节省很多时间,用别人写的函数和第三方库甚至可以文档都不看,直接看提示就完事了,用 js 你怎么知道一个函数的具体传入信息返回信息? 还不是要去翻源码,和编辑器直接给你提示相比效率低太多。当然你要是一直都是一个人写代码一个人看,也固定就用那几个库,那倒是无所谓,背都能背下来。
    ianva
        16
    ianva  
       2020-02-02 19:46:26 +08:00
    估计未来不会 TS 的话好工作应该是找不到的,代码质量提升太明显了
    hfpp2012
        17
    hfpp2012  
    OP
       2020-02-02 20:06:14 +08:00
    @qq544230987 类型限制不等于不自由呀,相反会让你更自由
    wi
        18
    wi  
       2020-02-02 21:08:50 +08:00
    看评论还是弱鸡太多,没意识到静态类型语言解决的问题。由他去。
    fanhed
        19
    fanhed  
       2020-02-02 21:13:23 +08:00
    喜欢动态的, 多数都是年轻人了
    多历练几年吧
    现在几大框架都在往 typescript 迁移了, 无需多言
    lxml
        20
    lxml  
       2020-02-02 21:16:20 +08:00 via Android
    当年 TC39 刚开始推 ESM 的时候很多人也觉得 TC39 是傻的,现成的 CommonJS 直接作为标准不就结了吗,后来才发现 ESM 的可静态分析的价值。

    尤雨溪评价 esm 和 commonjs 的,就如同 ts 和 js。

    大言不惭说一句,在目前很长一段时间内,浏览器 runtime 只能跑 js 的情况,认识不到 ts 带来收益的人,要么人菜要么项目菜。

    当然,长期还是看好 wasm,无奈进度实在是太慢了,慢的不正常。
    jishu541464750
        21
    jishu541464750  
       2020-02-02 21:54:23 +08:00
    2020 年了,我以为没有人不用 ts 了....看来还是自己的圈子呆久了。
    hfpp2012
        22
    hfpp2012  
    OP
       2020-02-02 23:12:41 +08:00
    @jishu541464750 还是有不少人觉得 ts 只是让编码更复杂
    yafoo
        23
    yafoo  
       2020-02-02 23:19:40 +08:00 via Android
    短时间内,还是要坚决抵制 ts
    暂时的认识是 js 和 ts,就相当于手动挡和自动挡
    anjianshi
        24
    anjianshi  
       2020-02-02 23:22:56 +08:00
    用严格的 TypeScript 写代码,因为有类型分析,能发现一些自己逻辑上的疏漏、排查出未照顾到的边界情况。显著减少 bug 几率。
    Evodrewburg
        25
    Evodrewburg  
       2020-02-02 23:34:12 +08:00 via iPhone
    写 ts 不就是写 java 吗
    puilu
        26
    puilu  
       2020-02-02 23:49:40 +08:00
    前端的东西不想折腾那么多了,前端在三四线城市已经很难找到合适的工作了。
    colatin
        27
    colatin  
       2020-02-03 00:34:41 +08:00
    给前端程序员安利这个简直吃力不讨好
    yuuko
        28
    yuuko  
       2020-02-03 00:49:42 +08:00 via Android
    真的是真香
    xcstream
        29
    xcstream  
       2020-02-03 00:59:29 +08:00
    jquery 一把梭能解决 95%的页面,比如这个帖子的页面
    BingoXuan
        30
    BingoXuan  
       2020-02-03 01:21:38 +08:00 via Android
    ts 是乐高,js 是橡皮泥,虽然都能造玩具车,但一眼见高下
    sillylang
        31
    sillylang  
       2020-02-03 01:56:34 +08:00
    @BingoXuan ts 能实现的 js 不能吗?
    BingoXuan
        32
    BingoXuan  
       2020-02-03 10:49:17 +08:00 via Android
    @sillylang
    ts 最终还是编译成 js,只是类型检查让 ts 如乐高一样,可塑性高又规整,不像 js 那般如橡皮一样灵活到写得严谨还要花额外的时间。

    以前我也觉得写需要类型检查的语言效率不高,后面写过 3-4w 代码的工程没类型重构起来你会疯掉。而且没有类型过了一两个月你会发现你忘记当初写的是啥。
    WinnieNumberTwo
        33
    WinnieNumberTwo  
       2020-02-03 10:59:28 +08:00
    就像学历过滤一样,以后用 ts 掌握得好不好来给前端分级,无论是对公司还是对具体的 team leader 都是成本更低的筛人标准。没必要吵架,我一个写后端的都会 ts 语法糖,程序员这一行不进则退。
    hfpp2012
        34
    hfpp2012  
    OP
       2020-02-03 12:34:55 +08:00
    一个东西被创造出来,肯定是有用的
    wysnylc
        35
    wysnylc  
       2020-02-03 13:23:01 +08:00   ❤️ 1
    @hfpp2012 #34 存在即合理,这是一句典型的被翻译给误导的名言。然后各种以误解误以讹传讹。黑格尔想表达的意思是:现实中存在的事物都有其存在的逻辑。把“合乎逻辑”翻译成“合理”也不是不可以,可问题是我们的语境里,合理还有另外一个更广泛的意思。于是意思就串了,无论是有意还是无意,都倾向于另外一个解释了。

    回归黑格尔的本意,会发现跟我们道家的观点是一回事:道生万物,万物皆有其道。但我们从来不会误会地把走歪门邪道称为合道。

    合乎现实存在的逻辑和一个东西有用是两回事,废物同样也有存在的"逻辑"
    sillylang
        36
    sillylang  
       2020-02-03 14:28:15 +08:00
    @BingoXuan 也就是说看规模了
    bigShrimp8577
        37
    bigShrimp8577  
       2020-02-04 12:18:15 +08:00
    @wysnylc 额,其实我没看懂你说啥,但感觉你有点较真,老实说我不知道这话出自谁口,我也没必要知道这话出自谁口,更没必要较真这话是不是与原话有出入,因为现实是黑格尔不是真理,他说的话也未必是真理。只有符合大众的符合主流的才是(伪)真理(或者说主流)
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5361 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 07:31 · PVG 15:31 · LAX 00:31 · JFK 03:31
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.