本篇文章旨在介绍下TypeScript这门新兴的程序设计语言,不需要你有多么强的专业知识,只需要你有半支烟的功夫。

好了,废话不多说,赶紧进入正题。为什么你需要拥抱TypeScript?那么你首先需要了解下TypeScript是个什么东东,不然我也只能劝您一句:“路边的野花你不要采”。

TypeScript is a superset of JavaScript.

  上面这一句就是官方给他的定义,翻译过来就是“TypeScript是JavaScript的超集”。呵呵,官方的说法依旧还是那么官方哈,其实他的潜台词就是说:“你JavaScript管得了的我要管,你JavaScript管不了的我更要管,这就是我TypeScript”。

  听完他霸气的宣言,是不是觉得有种西厂厂公雨化田的风范。当然,如果你还要问我JavaScript是个啥?那我只好向您挥挥衣袖,请您移步询问度娘吧。

知道了TypeScript为何物之后,接下来咱就好好说说为什么我们需要拥抱她?(更多精彩内容请关注微信公众号:it-talk)

TypeScript有个牛X的“爹”

  在这个“拼爹”的时代,有个牛X的爹你完全可以少奋斗50年,那么TypeScript的“爹”到底是谁呢?如果我告诉你你天天使用的Windows操作系统和Office办公软件是她的大哥大姐,那你能猜到她的“爹”是谁吗?没错,他就是大名鼎鼎的微软。

  而且更“可怕”的是:由于谷歌公司的AngularJS也采用了TypeScript进行开发,谷歌与微软也达成了合作,这就相当于谷歌认了TypeScript为“干女儿”。对于谷歌大家应该非常熟悉,我们使用的安卓手机的系统就是谷歌开发的。

  有了微软和谷歌这两个牛X的“爹”为她“铺路”,TypeScript的前途也将是前程似锦、一片光明。

TypeScript是开源的

  开源,即开放源代码,就是指微软将其实现的源码公开了。什么意思呢?就好比我们小时候做练习册,不会写的时候翻看答案,有的答案十分详细,你能看到解题的每一个步骤,这就是开源了。

  开源的另一层含义就是说你可以免费使用,甚至商用。自古以来,中国人讲究的是“滴水之恩,涌泉相报”,但由于微软采用的Apache License 2.0开源协议,该协议并不需要你涌泉相报,因为他知道你没钱;也不需要你感念于心,因为他知道你心里只有你的对象(没有对象的赶紧new一个)。该协议只需要你在项目中加上一个版权许可的声明,就能完全免费地使用TypeScript了。

  说到开源,就不得不提版权的问题,一般而言,你使用别人的东西都会涉及到版权。最近很热门的一个话题就是关于视觉中国对图片于版权的一个不太好的吃相,虽说他也受到了“从重”处罚,但确实也给我们的版权意识敲了一个警钟——不是什么东西你都能随随便便拿过来使用的,搞不好会让你倾家荡产。

TypeScript是易学习的

  请注意,这里是说TypeScript是很好上手、很好学习的,并不是说她属于《人民的名义》中那个易学习的哦。呵呵,好吧,有点冷!

  言归正传,为什么说TypeScript易学习呢?首先,她是基于JavaScript并添加了一些面向对象的特性,所以如果你有JavaScript和其他面向对象语言(如C#、Java)的基础,那么你看到TypeScript代码会有一种熟悉感。当然你要说你实在学不会,那你直接在TypeScript文件中书写JavaScript代码也是可以的,不过这就有点多此一举了哈。

  此外,TypeScript还在JavaScript的基础上加上了静态检查,这就使得程序更加的稳定。什么意思呢? 相信大家都经历过大大小小的考试,当我们写完试卷之后交给老师批改,是对是错要等老师批改之后才能知道,但是现在我们有了静态检查,就相当于你写完试卷了后有个很厉害的角色帮你检查试卷,如果有错误的地方,他能马上给你指出来,这样的话,你是不是每次就能考更高的分甚至是满分了呢?

总结

  本文讲述了需要拥抱TypeScript的几点原因,但这并不足以说完TypeScript的优点,也不能说明TypeScript就是万能的,我们需要根据实际的项目按需选择,毕竟只有合适的才是最好的。

  下面就以一段TypeScript代码结束本文,你能看出这段代码最后输出的结果是什么吗?欢迎在评论中写出你的答案。

(更多精彩内容请关注微信公众号:it-talk)

前端技术大行其道,再不拥抱TypeScript你就老了!的更多相关文章

  1. 2019年一半已过,这些大前端技术你都GET了吗?- 上篇

    一晃眼2019年已过大半,年初信誓旦旦要学习新技能的小伙伴们立的flag都完成的怎样了?2019年对于大前端技术领域而言变化不算太大,目前三大技术框架日趋成熟,短期内不大可能出现颠覆性的前端框架(内心 ...

  2. 解密国内BAT等大厂前端技术体系-腾讯篇(长文建议收藏)

    1 引言 为了了解当前前端的发展趋势,让我们从国内各大互联网大厂开始,了解他们的最新动态和未来规划.这是解密大厂前端技术体系的第三篇,前两篇已经讲述了阿里和百度在前端技术这几年的技术发展.这一篇从腾讯 ...

  3. 一文读懂前端技术演进:盘点Web前端20年的技术变迁史

    本文原文由作者“司徒正美”发布于公众号“前端你别闹”,即时通讯网收录时有改动,感谢原作者的分享. 1.引言 1990 年,第一个Web浏览器的诞生:1991 年,WWW诞生,这标志着前端技术的开始. ...

  4. [转] React风格的企业前端技术

    亲爱的各位朋友们,大家下午好! 首先祝大家国庆节快乐! 很高兴可以在国庆前夕,可以为大家分享一下React风格的企业前端技术. 谈到前端,可能以前大家的第一感觉就是,前端嘛,无非就是做做页面切图,顶多 ...

  5. 当下较热web前端技术汇总

    Web前段技术发展很快,主流技术日新月异,想想自己刚毕业那会用的asp技术,现在已经很少有主流网站在使用了.再到后来的J2EE框架,然后SpringMVC大行其道,但是最近各种js框架被广为传播,Ht ...

  6. 2019年一半已过,这些大前端技术你都GET了吗?- 下篇

    在上一篇文章中已经介绍了大前端关于状态管理.UI组件.小程序.跨平台和框架层的内容.在本文中,我会继续介绍编程语言.工程化.监控.测试和服务端,同时也会对下半年大前端可以关注的部分进行展望. 结合个人 ...

  7. 解密国内BAT等大厂前端技术体系-携程篇(长文建议收藏)

    1 引言 为了了解当前前端的发展趋势,让我们从国内各大互联网大厂开始,了解他们的最新动态和未来规划.这是解密大厂前端技术体系的第四篇,前三篇已经讲述了阿里.腾讯.百度在前端技术这几年的技术发展. 这一 ...

  8. 解密国内BAT等大厂前端技术体系-美团点评之下篇(长文建议收藏)

    引言 在上篇中,我已经介绍了美团点评的业务情况.大前端的技术体系,其中大前端的技术全景图如下: 上篇重点介绍了工程化和代码质量的部分,工程化涵盖了客户端持续集成平台-MCI.全端监控平台-CAT.移动 ...

  9. 8分钟为你详解React、Angular、Vue三大前端技术

    [引言] 当前世界中,技术发展非常迅速并且变化迅速,开发者需要更多的开发工具来解决不同的问题.本文就对于当下主流的前端开发技术React.Vue.Angular这三个框架做个相对详尽的探究,目的是为了 ...

随机推荐

  1. 使用box-shadow进行画图(性能优化终结者)

    最近突然想做一些好玩的东西,找来找去,想到了之前曾经在网上看到过有人用box-shadow画了一副蒙娜丽莎出来感觉这个挺有意思,正好趁着周末,自己也搞一波 前言 在线地址: 优化前的版本优化后的版本源 ...

  2. Canvas的基本用法

    canvas没有设置宽度和高度的时候,会初始化宽度:300像素和高度:150像素.可以使用CSS来定义大小,但在绘制时图像会伸缩以适应它的框架尺寸:如果CSS的尺寸与初始画布的比例不一致,它会出现扭曲 ...

  3. 两个标签页定位第二个标签页元素时显示element not visible

    问题描述 web页面有两个标签页, 当转换到第二个标签页定位元素时, 显示element not visible. 代码 ... //省略 WebElement ele= browser.getEle ...

  4. FTP用户无法登陆排错详解

    FTP作为一种简单便捷的文件共享技术,在许多企业内部得到使用.若启用FTP的验证控制,管理员更可对不同的用户设置不同的访问权限,控制用户对特定内容的访问.IIS中的FTP站点只有一种验证方式,即基本验 ...

  5. BZOJ_3993_[SDOI2015]星际战争_二分+网络流

    BZOJ_3993_[SDOI2015]星际战争_二分+网络流 Description 3333年,在银河系的某星球上,X军团和Y军团正在激烈地作战.在战斗的某一阶段,Y军团一共派遣了N个巨型机器人进 ...

  6. 在线数据库表(sql语句)生成java实体类工具

    相信每个做java开发的读者,都接触过SQL建表语句,尤其是在项目开发初期,因为数据库是项目的基石. 在现代项目开发中,出现了许多ORM框架,通过简单的实体映射,即可实现与数据库的交互,然而我们最初设 ...

  7. json数组的解析

    一直以来,经常会遇到json数据从前端或者我经常从网站上爬取的数据中会有json数据的存在,这样如果想要获取json数据就需要对json数据进行解析 在开发过程中,经常需要和别的系统交换数据,数据交换 ...

  8. 第十四章——循环神经网络(Recurrent Neural Networks)(第二部分)

    本章共两部分,这是第二部分: 第十四章--循环神经网络(Recurrent Neural Networks)(第一部分) 第十四章--循环神经网络(Recurrent Neural Networks) ...

  9. Spring Framework学习要点摘抄

    以下摘自Spring Framework官方文档,版本Spring 4.3. <context:annotation-config/> implicitly registered post ...

  10. 8天入门docker系列 —— 第四天 使用aspnetcore小案例熟悉端口映射和挂载目录

    到目前为止大家应该对镜像和容器有了一个大概认知,而且也用了docker进行了一个简单化的部署,但仔细一看问题还有很多,所以这篇我们继续完善. 一:如何让外网访问到容器内应用 我们知道容器内拥有自己的子 ...