目标
- 深入理解
TypeScript核心概念; - 熟练进行
TypeScript工程配置; - 玩转四种典型前端应用的开发;
- 重塑“类型思维”,提升编程素养。
重塑“类型思维”
Atwood定律:任何能用JavaScript实现的应用,最终都会用JavaScript实现。
如今,从移动终端到后端服务,从 IoT 到神经网络,JavaScript 几乎无处不在。如此广泛的应用领域,自然对语言的安全性、健壮性和可维护性有更高的要求。
-
JavaScript是一门动态弱类型语言,对变量的类型非常宽容,而且不会在这些变量和它们的调用者之间建立结构化的契约。- 调用别人的函数,没有任何注释,为了搞清楚参数类型,只能硬着头皮去看里面的逻辑。
- 为了保证代码的健壮性,不得不对一个函数的输入参数进行各种假设。
- 底层类库维护时,优化了一个参数类型,因为不知道有多少处引用而存在未知风险。
- 定义好了接口,联调时却报错。
长期在没有类型约束的环境下开发,就会造成“类型思维”的缺失,养成不良的编程习惯。在
ECMAScript标准推出静态类型检查之前,TypeScript是当下解决此问题的最佳方案。 -
TypeScript是拥有类型系统的JavaScript超集,为JavaScript提供了良好的类型检查支持,而且能够编译成标准的JavaScript。- 类型检查:
TypeScript会在编译代码时,进行严格的静态类型检查,意味着可以在编码阶段发现可能存在的隐患,避免引发不必要的线上问题。 - 语言扩展:
TypeScript会包括来自ECMAScript 6和未来提案中的特性(如:异步操作和装饰器),也会从其他语言借鉴某些特性(如:接口和抽象类)。 - 工具属性:
TypeScript可以编译成标准的JavaScript,可以在任何浏览器、操作系统上运行,无需运行时的额外开销。 Visual Studio Code具备强大的自动补全、导航和重构功能,使得接口定义可以直接代替文档,同时可以提高开发效率,降低维护成本。TypeScript可以帮助团队重塑“类型思维”,接口提供方将被迫去思考API的边界,有助于从代码的编写者蜕变成代码的设计者。
- 类型检查:
小结
思维方式决定了编程习惯,编程习惯奠定了工程质量,工程质量划定了能力边界。面对越来越复杂的前端应用,TypeScript 提供的思维方法可以让你在前端开发之路上走得更稳、更远。