结论
这是 TypeScript 课程的总结。
快速概览
在本课程中,我们学习了 TypeScript 的目标以及该语言最常用的功能。此时,你应该已经熟悉了语言的核心内容,例如多种类型的变量、函数的类型定义,以及如何使用泛型代码实现复用。
我们了解了各种对象类型及其适用场景。深入探讨了索引类型,并学习了如何在使用字符串访问数据时保持类型安全。掌握了多种缩小类型范围的技巧,以及如何通过映射类型动态地转换不同类型。我们还学习了多种迭代方式,以及如何使用更简洁的语法操作对象和数组。
实用建议
在学习 TypeScript 类型的过程中,请尝试拥抱其带来的好处。如果你来自 JavaScript,最初的一个月对类型系统感到抵触是很正常的。但随着时间推移,并与其他开发者共享代码后,你会很快意识到,编写类型注解所带来的微小负担,远远被更快理解代码的能力所弥补,同时语言本身也能减少你记忆某个变量可接受成员的脑力负担。
当你发现许多问题或误用可以在代码编辑器中被提前捕获,而不是等到运行时才发现时,TypeScript 会显得更加轻量。实际上,根据传入函数的变量类型,你甚至可以减少部分原本用于检查条件的单元测试。现在这些工作由 TypeScript 自动完成,相关测试将不再需要。
最后,开始时要循序渐进但保持严格。不要在新项目中跳过严格模式,否则将来会遇到麻烦。相反,从严格模式开始,允许自己暂时为少数变量显式使用 any 类型。随着时间推移,逐步重构为明确的类型。久而久之,你会习惯于先定义类型,再在整个代码库中使用它们。
接下来的学习方向
本课程是 TypeScript 的入门介绍。虽然涉及了一些较高级的主题,但大部分内容都是构建应用所必需的基础知识。
在此基础上,还有许多面向对象的特性尚未涵盖。许多 JavaScript 编程模式并不依赖面向对象编程,因此这部分未作展开。不过,探索 TypeScript 在类、多态代码、抽象类等方面的潜力仍然是一个不错的选择。