按关键词阅读:

在这篇文章中 , 我将会讲述我是如何从一名 TypeScript 黑粉的开发者转变到如今不想回到原生 JavaScript 世界的开发者的旅程, 也许我的想法可以帮助和我几年前一样境遇的人们 。
为什么我曾经是 TypeScript 的黑粉?我一直觉得给函数和变量设定类型 , 满足 TypeScript 编译器的各种检查是一种过度的设计 , 并且没有任何意义上的好处 。 而且这个设计也让我编写程序的速度很慢 , 也是因为我经常会遇到一些作为一名新人所难以理解的编译错误 。 我挠头三千尺 , 白发飘落 , 试图去找出问题所在 , 也同时增生了一丝惆怅与挫败 。 我开始讨厌 TypeScript 这门语言了 。
另一个原因是 TypeScript 中诸如泛型之类的概念我一开始觉得很难理解 。 我开始觉得自己又深陷 Java 世界那般的泥潭 , 似乎每句代码的输入都是强类型并且令我极度厌烦的 。 当我开始学习 TypeScript 时 , 即使像下面这样的简单代码也足以让我感到恐惧 。
由于上述的原因 , 即使我通过观看一些在线的教程或是尝试去阅读书籍来学习 TypeScript , 我也从未主导或参与过任何使用 TypeScript 编写的企业应用程序的开发之中 。 实际上 , 我过去常常选择 JavaScript 而不是 TypeScript(如果可以选择)去完成家庭作业这一公司面试过程的一部分。
但是 , 当我转任现职时 , 我失去了使用 JavaScript 的权利!因为我将要处理的所有应用程序都是用 TypeScript 编写的(JavaScript 部分都是些旧代码) 。 我对 TypeScript 的仇恨 , 与日俱增!但在几个月后 , 我终于明白了为什么会有人更喜欢 TypeScript , 而不是喜欢 JavaScript 的原因 , 明白了使用 TypeScript 的好处和一些激励我去尝试使用的的理由 。 这些内容我将在下面的部分中列出:
我成为 TypeScript 粉丝的三大原因避免无效状态的出现 & 拥有详尽的检查这就是我喜欢 TypeScript 的主要原因 。 如果你想了解更多这个概念的信息 , 我建议你看下面的视频 —— 虽说它说的是 Elm 语言 , 但该概念也适用于 TypeScript 语言 。
及早发现错误在使用 JavaScript 时 , 我多次遇到过由于在前端没有进行类型检查而在生产环境发现 bug 的情况 。 这些 bug 本可以被避免 , 并且可以在编译时被 TypeScript 编译器发现 , 这样可以节省研发和 QA 的工作周期 。
使用 TypeScript , 一切都保持最初定义的方式 。 如果将变量声明为布尔型 , 则它将始终是布尔型 , 并且不会变成数字 。 这增加了代码按照最初预期的方式工作的可能性 。 简而言之 , 代码是可预测的!
丰富的 IDE 支持 & 易于重构集成开发环境(IDE)让有关类型的信息更加有用 —— 我们可以在 IDE 中使用上代码导航和自动完成等功能 , 并借助这些准确的建议修复错误 。 我们还可以在输入代码时获得反馈:编辑器会在错误发生时立即标记出错误 , 包括与类型相关的错误 。 这些功能可帮助开发者写出可维护的代码 , 并带来巨大的生产力提升。
关于重构 , 比如引入一个新状态或者移除应用程序正在使用的不需要的状态 , 如果在过程中我们忘记了要去更新部分引用 , TypeScript 编译器就会进行警告 。 重构后的应用程序将像重构之前一样工作 , 不用担心兼容问题 。 这能让你对重构充满信心 。
结论总而言之 , 使用 TypeScript 有许多的好处(如果你还没有这样做的话) , 而以上的几点就是我的主要动力 , 也是因为这些动力 , 我对 TypeScript 黑转粉了 。
如果你是 TypeScript 的初学者或想提高你的知识 , 那么我可以推荐一些书:
- TypeScript 50课
- 使用 TypeScript
【App Store|为什么对TypeScript黑转粉?一个JS开发者的深情自白】
来源:(清风酔)
【】网址:/a/2021/0305/kd765826.html
标题:App Store|为什么对TypeScript黑转粉?一个JS开发者的深情自白