下一代 Node 强势来袭:Deno

640?wx_fmt=jpeg

web前端教程
用大白话,来讲编程
640?wx_fmt=jpeg


近日,Node 之父 Ryan Dahl 发布新的开源项目 deno,从官方介绍来看,可以认为它是下一代 Node,使用 Go 语言代替 C++ 重新编写跨平台底层内核驱动,上层仍然使用 V8 引擎,最终提供一个安全的 TypeScript 运行时。 


特性 

  • 支持 TypeScript 2.8 开箱即用; 

  • 无 package.json,无 npm,不追求兼容 Node; 

  • 通过 URL 方式引入依赖而非通过本地模块,并在第一次运行的时候进行加载和缓存,并仅在代码使用–reload运行,依赖才会更新,引入方式如:

import { log } from "./util.ts"
  • 可以控制文件系统和网络访问权限以运行沙盒代码,默认访问只读文件系统可访问,无网络权限。V8 和 Golang 之间的访问只能通过 protobuf 中定义的序列化消息完成; 

  • 发生未捕捉错误时自动终止运行; 

  • 支持 top-level 的 await; 

  • 最终创建单一可执行文件; 

  • 目标是兼容浏览器; 

  • 可以作为库引入,用于建立自己的 JavaScript runtime。


总结

这几个特性,有好几个都是针对目前 Node 的痛点而来的,包括无 package.json、依赖的引入和更新方式,针对的就是被广泛吐槽的过大的node_modules。


issue闹剧

Deno还没火,Deno的 issue火了。

640?wx_fmt=jpeg

Deno issue 的狂欢,是中国开发者的耻辱柱。一位中国开发者提了个issue,引发了大规模灌水,最后Ry不得不暂时关闭评论功能。


毫无意义的issue 是一种骚扰,开源作者贡献给整个社区自己的劳动成果,然而却缺少了应得的尊重,社区有社区的基本礼仪,望自重。


热门文章

原创教程

原创教程:

附加习题:


趣味职场


培训费用:

合作推广分割线

640?wx_fmt=png