文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

TypeScript的优点有哪些

2024-04-02 19:55

关注

本篇内容介绍了“TypeScript的优点有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

Chirag Swadia 自称曾是 Anti-TypeScript 的 JavaScript  开发者。谈及反对的原因,他以前一直认为给函数/变量添加类型以满足 TypeScript 编译器的要求属于过度工程化 (Over-Engineering)  的设计。因为这并没有提供任何有意义的便利之处,而且降低了开发效率——Chirag  表示自己最初总会遇到一些难以理解的编译错误,需要花费时间来处理。他也因此感受到了挫败感,并开始讨厌 TypeScript。

另一方面的原因是,Chirag 难以理解 TypeScript 中像泛型这样的高级概念。他觉得自己身处 Java  世界,每行代码都有很强的类型化,让人不知所措。在 Chirag 开始学习 TypeScript 时,他甚至会害怕下面这种简单的代码。

TypeScript的优点有哪些

▲ TypeScript 泛型示例

因此,由于上述原因,虽然 Chirag 通过观看教程或阅读书籍来学习 TypeScript,但从未参与过任何使用 TypeScript  编写的企业项目。

变化出现在 Chirag 担任新职务之后,此时项目的技术栈为 TypeScript,他所负责的应用都是 TypeScript 编写(只有遗留下来的代码是  JavaScript 代码),因此他不得不写起了 TypeScript 代码。正如 Chirag 所预料的那样,起初这对于他来说是一个巨大的挑战,他对  TypeScript 的恨意也因此越来越大,但最终在几个月后,他发现了 TypeScript 的好处以及其他人喜欢 TypeScript 而不是  JavaScript 的原因。

TypeScript的优点有哪些

Chirag 也列出了自己成为 TypeScript 粉丝的三大理由。

不可能状态无法恢复并进行详尽的检查

Chirag 表示这是他喜欢 TypeScript 的主要原因。他引用了在 React 应用中利用 TypeScript  来避免不可能状态的例子,此例子描述了交通信号灯系统处理不可能状态的案例(点此查看)。

可尽早发现错误

Chirag 表示在使用 JavaScript 时,曾遇到过多次由于在前端没有进行类型检查而在生产环境发现 bug 的情况。这些 bug  本可以避免,并且可以在编译时被 TypeScript 编译器发现,这样可以节省研发和 QA 的工作周期。

他认为使用 TypeScript  可以将一切都保持为最初定义的状态,如果将变量声明为布尔型,则它将始终是布尔型,并且不会变成数字。这提升了代码按照最初预期方式运行的可能性。简而言之,代码是可预测的。

具有丰富的 IDE 支持并易于重构

Chirag 认为,类型相关的信息可以使 IDE 更好地发挥其用处,例如获得代码跳转和自动补全等功能,IDE  会提供准确的建议。此外,在输入代码时会获得即时反馈,因为编辑器会在错误发生时立即标记出错误,包括与类型相关的错误。这些功能可帮助开发者写出可维护的代码,并带来巨大的生产力提升。

至于重构,Chirag 举了一个例子,比如引入一个新状态或者移除应用程序正在使用的不必要状态,如果此时忘记更新部分引用,TypeScript  编译器就会进行警告。他还表示重构后的应用程序将以重构前的方式工作,所以不用担心兼容方面的问题。

“TypeScript的优点有哪些”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-前端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯