自 2019 年 7 月来,本人使用 TypeScript 搞开发也已经有大半年了,结合这大半年的开发经历,来谈谈自己的一些想法。
先下结论吧,本人的结论是:引入 TypeScript 会导致项目的复杂度上升,但同时由于 TypeScript 类型提示、校验功能,可以规避 JavaScript 中常见的低级错误,在使用 vscode 等编辑器开发时,TypeScript 有着比 JavaScript 更好的代码提示功能,对于开发来讲也是事半功倍。所以,对于小型项目而已,TypeScript 开发会比 JavaScript 开发更麻烦一些,但对于大型项目,TypeScript 比 JavaScript 更好。可以这么说,越大型的项目越适合使用 TypeScript。
接下来结合具体的例子来说明。在 vue3.0 中,使用了 TypeScript 重构,vue3.0 因此将提供更加强大的类型提示和校验功能。而前端的另一大框架,React,则早就支持了 TypeScript。更不要说 Angular 了。
随着主流的包都逐渐用上了 TypeScript,要么是直接采用 TypeScript 重构,要么是用 TypeScript 进行类型声明。可以说,TypeScript 的出现改变了 JavaScript/node.js 的生态,对于 JavaScript 开发可以说是非常大的进步。
在虽然 TypeScript 很早就诞生了(2012 年 10 月 1 日),但真正流行开也是最近几年的事情。随着前端三大框架的推动,可以预见,TypeScript 在未来将会越来越火。而且由于 TypeScript 是 JavaScript 的超集,因此,即便你什么都不做,只要把 js 文件的后缀名改成 ts,它就是一个 合法的 ts 文件了。
对我个人而言,对 TypeScript 的许多特性还并不是十分熟悉,但即便如此,使用 TypeScript 的类型提示功能就已经让我非常满意了。类型声明可以有效避免出现类型错误,这在动态语言中是非常常见的问题。
另外,TypeScript 和 Babel 类似,也是提过代码编译功能,不同的是,Babel 转换 js 到 js,将 js 高级语法转换为低级;而 TypeScript 则是将 ts 转换为 js,也能将高级语法转换为低级。
在当前模块化项目中,如果是后端可能还好,能直接写出 node.js 直接执行的代码,而如果是前端,必然要考虑兼容性。也就是说,既然都要进行代码编译,那么 js 相比 ts 似乎没那么好了,倒不如直接使用 TypeScript,还更加方便。
此外,也是有一个 TypeScript 和 Babel 共同的优点,那就是可以尽情使用最新的 JavaScript 语法。我们知道现在的 ECMAScript 每年都会发布一次,每次都会添加一些新的语法。新的语法会给开发上带来许多方便,但同时也带来一个问题,那就是兼容性问题。你无法保证自己写的代码运行环境是否是最新的。而使用上 TypeScript 后,在编译时就会将不兼容的语法向下转换为低级语法。可以说既方便了开发,又不影响兼容性。
所以还在等什么呢,赶快投入 TypeScript 的怀抱吧~
- 本文链接: https://wp.cmyr.ltd/archives/why-do-i-like-to-use-typescript
- 版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
欢迎关注我的其它发布渠道
发表回复
要发表评论,您必须先登录。