微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

typescript 好不好学?

花了一周时间,把ts的基础知识学明白了。

现在,谈谈感受。

1.这门语言诞生背景

js没有编译器,没法在静态(编译时的状态,就叫静态,运行时状态,叫动态)对类型检查。只能在运行时才能检查类型对错。造成问题是,编码不能自动提示(为什么呢?),运行时才报错,不利于大项目的质量控制。相对来说,强类型,编译型语言,就非常安全,因为编译器是很强大的助手,能发现问题。比如,java,c#,c++都是如此。其实,动态语言都有js的问题。

2.ts是怎么解决

微软公司创建了ts语言,编写ts编译器;程序员负责写ts文件,用ts编译器(tsc)编译ts文件生成js文件支持es5, es6所有版本;

ts是静态语言,js是动态语言。ts号称是js超集;c++是c的超集,所以,c++可以直接用c语言语法书写;ts也可以直接用js语法写代码,编译不报错。

3.ts相对于js增加了什么东西

  • 创造了新的基础类型
  • 创造了接口概念,这个接口很另类,如果学过c#,肯定会懵逼,因为,跟c#区别挺大。它的设计思想是基于鸭子类型。就是说,签名相同的类,或者接口,就可以认为是一个东西。不需要继承特定的接口和类。
  • 创造了类
  • 创造了字面量类型,数字类型。这两种类型组合,可以实现并类型,交类型。
  • 创造了枚举类型
  • 创造了泛型

语法和特性都是从c#山寨过来的优秀特性,让ts成为,仅次于java,第三像c#的语言。

对.net 程序员太友好了,越看越顺眼。

ts可以用于后台开发,也可以用在前台

vuejs,reactjs都已经支持ts了,就是说,用ts重写源代码

听说,国内公司,也开始普及ts开发了,具体情况不了解。

4.关于接口

  • ts的接口很重要,能定义构造器,属性方法,索引类型(就是数组),类
  • 接口可以继承类
  • 接口的定义格式很难理解,很烧脑。

5.gulp开发

推荐用gulp组织代码,构建代码,开发项目

6.参考资料

  • https://www.typescripttutorial.net/typescript-tutorial
  • https://www.typescriptlang.org/docs/

7.学习工具

官网的文档,在例子代码区域悬停,右下角可以看到try链接,点开,就可以进入在线编辑演示工具,编写代码,可以看到执行结果,生成js文件源码。

极度推荐这个工具,对理解概念,十分有用,多敲敲,多练练,很快就能理解。

8.目前疑问

  • 如何调用其他js模块
  • 如何用gulp开发一个项目

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐