Typescript: the Good Parts

本文作者:IMWeb 杨文坚 原文出处:IMWeb社区 未经同意,禁止转载

Typescript: the Good Parts

Douglas Crockford 曾经扯了个Javascript的蛋,这次我来学一下,扯一下Typescript的。

ES6 import make no sense ?

如果我们这样是import模块会怎么样呢?

import * as lib from libPath;

sorry,这根本走不通,因为import是个静态语法,设计者根本不希望模块加载和上下文有关系。静态化有什么好处?

  1. 编译/解析器可以做更好地预处理进行优化,比如解决令我们头疼的NodeJS require is dog slow!
  2. 为未来实现提供可能性

Optional Type System

我就喜欢苗条,为啥要加类型?

  • Key Point:单页应用客户端应用服务端应用单人搞不定,需要很多人,并没有适用于Javascript这种无类型语言的团队开发模式,但面向对象,面向接口这些开发方式在有类型语言已经非常成熟。

有类型到底有什么好处呢?

  • 编译时发现错误
  • 代码提示
  • 安全快速重构
  • 面向对象、面向接口编程
  • 性能优化
  • IDE支持
  • Duck Type

我们难道不能等标准来临么?

符合审美的类型标准ES6、ES7没有,甚至ES8也不会有。

Better Async way you must wanted

怎么写异步比较好?async function解决你所有问题。

async function main() {
 await ping();
}

async function ping() {
 for (var i = 0; i < 10; i++) {
  await delay(300);
  console.log("ping");
 }
}

function delay(ms: number) {
 return new Promise(resolve => setTimeout(resolve, ms));
}

main();

Any JavaScript code is a valid TypeScript code

可以直接在Typescript中只使用Javascript而不会产生任何问题,这样对迁移和混用都足够友好。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏SDNLAB

【一课专栏】解构ODL引子 - ODL入坑之路·上篇

做为一名无证驾驶ODL这辆SDN战车3年多的老司机,在基于ODL进行商用SDN控制器的研发过程中,总结了一些经验和教训,也有一些心得体会,借这个机会与大家一起交...

4442
来自专栏企鹅号快讯

高级语言,高级在哪?

高级语言、低级语言,都是对计算机而言。人类语言不存在这种说法。 在上篇文章(一分钟认识你的电脑)中,柚子向大家介绍了内存。 内存的最小单位是bit,二进制表示,...

25710
来自专栏编程

记一次非常愉悦的 Python 使用经历

临近毕业,班群里发了个要核对的信息的表格,要我们检查一下,涉及到毕业证。 于是我就下载来看一看,结果傻了眼:(敏感信息已打码) ? 是的,姓名和身份证号都是明文...

2205
来自专栏安恒信息

网络密码需至少12个字符才能抵御黑客

美媒称,“心脏出血”漏洞是一个巨大的互联网安全漏洞,对包括雅虎、Flickr和Tumblr等著名网站在内的数以百万计的网站造成危害,致使用户...

32711
来自专栏程序员互动联盟

【编程基础】聊聊C语言-磨刀不误砍柴工

看到上篇讲的《程序和编程语言》引发了大家的热议,小编很是激动。不过被人评论说是不懂编程,小编还真是郁闷了一下下,在此声明小编可是货真价实的“程序猿”哦。言归正传...

4019
来自专栏一个会写诗的程序员的博客

《Spring Boot极简教程》附录4 Java编程简史 附录4 Java编程简史参考资料

在20世纪60年代,软件曾出现过严重危机,由软件错误而引起的信息丢失、系统报废事件屡有发生。为此,1968年,荷兰E.W.Dijkstra提出了程序设计中常用的...

1022
来自专栏牛客网

网易云音乐Java面经(共三面)

【每日一语】很多人都无从得知自己的天赋,因为找不到相信他们的老师。于是他们深信自己很笨。——《心灵捕手》

6091
来自专栏AlgorithmDog的专栏

Akka 使用系列之一: 快速入门

最近在看 Spark 相关的资料,准备整理一个 Spark 系列。Akka 是 Spark 实现内部通讯的组件,Spark 启动过程的第一步便是建立 A...

25310
来自专栏Java技术栈

重大利好,Dubbo 3.0要来了。

关于Dubbo的好消息,2018年1月8日,Dubbo创始人之一梁飞在Dubbo交流群里透露了Dubbo 3.0正在开工的重大消息。 Dubbo是阿里开源的分布...

46410
来自专栏互联网杂技

关于Java面试,你应该准备这些知识点

马老师说过,员工的离职原因很多,只有两点最真实: 钱,没给到位 心,受委屈了 当然,我是想换个平台,换个方向,想清楚为什么要跳槽,如果真的要跳槽,想要拿到一个理...

3817

扫码关注云+社区

领取腾讯云代金券