类型系统在前端开发中的重要性

    JavaScript 由于其设计之仓促,故而有很多缺陷,但由于一系列历史的原因,成为了目前运用最普遍的前端开发语言。一直以来,开发者们与这些缺陷进行着不懈的斗争,发表了一系列编码规范、开发工具(如ESLint)、类型注释工具(如 Facebook 的 Flow.js)。然而,规范不是人人遵守,工具不是人人使用,这些东西的约束力终究不够。
    事实上,我们不妨换一个思路,不直接使用 JavaScript,而使用别的、可以编译成 JavaScript 的编程语言,如 TypeScript、Dart。
    带类型的前端编程语言无疑有更多的好处。
    一、改善代码质量。类型的约束可以大大提高代码的质量,避免很多隐晦的错误。除了 1+2+'3' 与 '1'+2+3 这种低级问题外,比较致命的就是给函数传递参数。为了传递正确类型的参数,要采用注释、文档说明等方法,如果一个项目的管理做得好也就罢了,一旦在这方面有疏忽,还要用肉眼去解析一下代码。搞大型工程的使用,头脑本来就高负荷运转,频繁做这种事极易忙中出错,一个小错误淹没在代码的汪洋大海中,排查起来又要费一番功夫。
    二、提高开发效率。如果没有类型,IDE 提供的智能感知基本只能靠猜。有了类型,IDE 可以更好帮助开发者进行代码分析、自动补全、智能感知,同时,来自传统面向对象编程语言中的类、继承、枚举、泛型,使得开发者花费更少的排错时间,而模块为构建大型应用提供了帮助,这些都让开发效率有质的飞跃。
    三、降低重构难度。有谚云:“动态类型一时爽,代码重构火葬场。”这话虽有些夸张,但比较有经验的开发者对此都有所体会。
    目前,比较受关注的有类型前端编程语言是 TypeScript。越来越多的前端项目开始用它开发,很多已有的前端项目有了对应的“.d.ts”定义文件,甚至 Angular 这样的大工程,干脆把 TypeScript 作为官方推荐语言,由此可见,类型系统在前端领域,已经越来越被重视。
    在可预见的未来,JavaScript 很可能成为前端的“汇编语言”,而开发者们使用更有生产力、更安全、“坑”更少的前端编程语言进行开发。

转载于:https://my.oschina.net/jthmath/blog/793315

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值