北京个人网站备案,在线做网站有哪些平台,上海网站开发哪里有,建大型购物网站喜欢就关注我们吧#xff01;一名曾仅使用 JavaScript 的开发者解释自己为何从反对 TypeScript 到转变为 TypeScript 粉丝。Chirag Swadia 自称曾是 Anti-TypeScript 的 JavaScript 开发者。谈及反对的原因#xff0c;他以前一直认为给函数/变量添加类型以满足 TypeScript 编… 喜欢就关注我们吧一名曾仅使用 JavaScript 的开发者解释自己为何从反对 TypeScript 到转变为 TypeScript 粉丝。Chirag Swadia 自称曾是 Anti-TypeScript 的 JavaScript 开发者。谈及反对的原因他以前一直认为给函数/变量添加类型以满足 TypeScript 编译器的要求属于过度工程化 (Over-Engineering) 的设计。因为这并没有提供任何有意义的便利之处而且降低了开发效率——Chirag 表示自己最初总会遇到一些难以理解的编译错误需要花费时间来处理。他也因此感受到了挫败感并开始讨厌 TypeScript。另一方面的原因是Chirag 难以理解 TypeScript 中像泛型这样的高级概念。他觉得自己身处 Java 世界每行代码都有很强的类型化让人不知所措。在 Chirag 开始学习 TypeScript 时他甚至会害怕下面这种简单的代码。▲ TypeScript 泛型示例因此由于上述原因虽然 Chirag 通过观看教程或阅读书籍来学习 TypeScript但从未参与过任何使用 TypeScript 编写的企业项目。变化出现在 Chirag 担任新职务之后此时项目的技术栈为 TypeScript他所负责的应用都是 TypeScript 编写只有遗留下来的代码是 JavaScript 代码因此他不得不写起了 TypeScript 代码。正如 Chirag 所预料的那样起初这对于他来说是一个巨大的挑战他对 TypeScript 的恨意也因此越来越大但最终在几个月后他发现了 TypeScript 的好处以及其他人喜欢 TypeScript 而不是 JavaScript 的原因。Chirag 也列出了自己成为 TypeScript 粉丝的三大理由。不可能状态无法恢复并进行详尽的检查Chirag 表示这是他喜欢 TypeScript 的主要原因。他引用了在 React 应用中利用 TypeScript 来避免不可能状态的例子此例子描述了交通信号灯系统处理不可能状态的案例。案例查看https://zohaib.me/leverage-union-types-in-typescript-to-avoid-invalid-state/可尽早发现错误Chirag 表示在使用 JavaScript 时曾遇到过多次由于在前端没有进行类型检查而在生产环境发现 bug 的情况。这些 bug 本可以避免并且可以在编译时被 TypeScript 编译器发现这样可以节省研发和 QA 的工作周期。他认为使用 TypeScript 可以将一切都保持为最初定义的状态如果将变量声明为布尔型则它将始终是布尔型并且不会变成数字。这提升了代码按照最初预期方式运行的可能性。简而言之代码是可预测的。具有丰富的 IDE 支持并易于重构Chirag 认为类型相关的信息可以使 IDE 更好地发挥其用处例如获得代码跳转和自动补全等功能IDE 会提供准确的建议。此外在输入代码时会获得即时反馈因为编辑器会在错误发生时立即标记出错误包括与类型相关的错误。这些功能可帮助开发者写出可维护的代码并带来巨大的生产力提升。至于重构Chirag 举了一个例子比如引入一个新状态或者移除应用程序正在使用的不必要状态如果此时忘记更新部分引用TypeScript 编译器就会进行警告。他还表示重构后的应用程序将以重构前的方式工作所以不用担心兼容方面的问题。觉得不错请点个在看呀