Node之父Ryan Dahl 前日在柏林JS大会上发表了题为“Design Mistake in Node”的主题演讲,其中“Node失误太多无力回天,Deno前景明朗”的观点令人瞩目,如何看待这一观点?Node是否真的前景堪忧?Deno在短期内能否取代Node的“江湖地位”?Deno又有什么优势?(迷茫!!!)
node在某些方面显然是失败的,其中存在的问题是无法忽视的。js社区常年选择性失明的那些问题,总有人要站出来改正。能脑补出这个问题的标题党,也是傻X。演讲里确实是提到了一些问题,但并没有说已无力回天。那么多公司,那么多项目能因为有人指出来几个问题就不能工作了吗?就因为这个人是最先提出的Node的人问题就能更严重是吧?大家都是成年人了,一天到晚咋咋呼呼的不嫌累吗?再说做前端的人那么多年技术迭代都过来了,这点小风小浪又不算啥了,小年青的就少抱怨吧,非得做前端就得习惯,这年头哪有一招鲜吃遍天的技术?对新人的建议:不要学deno,也不要学node,最好连前端都不要碰。
这是 Ryan Dahl 做的第二次关于 JS 的公开演讲,第一次是在 2009 年,当时是宣布 Node 项目诞生,而这一次,演讲主题却是 “Design Mistakes in Node” 。 其实确切的来说,他也只是在大会上讲述了在设计node时犯的一些包括安全性、构建系统等的错误,而且这些既定存在的不足导致的严重bug在具体项目中将不可回避。同时提出了新项目Deno的目标和规划。
就我个人而言,并没有感受到他在否认node的重要性,作为一名技术人员,从技术的角度去分析node在设计层面上固有存在的问题,不断追求新的技术,这一点根本无法指摘。Deno作为他提出的新项目,有着安全性,简化模块系统,将Typescript编译器内置于可执行文件当中等目标,这些当然是Deno的优势,但是时间再推移一段时间后,谁知道Deno又不会有什么新的设计问题,框架的更新速度太快了,就是你明知道这种框架存在一定的问题,你就能选择不去学不去用吗?技术的更新就是这样的,没办法,前端的路啊!真的是活到老学到老的职业啊!!!
介绍新项目 deno 时,很多 IT 新闻和媒体都用了标题:“下一代 Node.js”。Deno 并不是下一代 Node.js。 Node.js 和 Deno 分别是 Ryan Dahl 在 2009 年和 2018 年,基于当年最新的前端技术开发的非浏览器 JavaScript 运行时。目前Deno只是一个demo而已,甚至连二进制发行版都没有,所以在短时间里Deno并不能应用于实际生产中,诸君可以把心放回肚子里了。
如果在node和Deno中一定要选一个的话,那位父亲给出的回答也是使用node,Deno作为一个实验性产品目标并不在于兼容Node,而是兼容浏览器。
所以Deno 不是要取代 Node.js,也不是下一代 Node.js,也不是要放弃 npm 重建 Node 生态。Deno 的目前是要拥抱浏览器生态。不可以说这个目标是真的真伟大。Ryan Dahl 开发了 Node.js,社区构建出了整个 npm 生态。而可谓是“Node.js 是前端工程化的重要支柱之一”。
Ryan Dahl 离开 Node.js 去了 Golang 社区,但是现在 Ryan Dahl 又回来了,为 JavaScript 社区带来了 Golang,开发出了 Deno,然后拥抱浏览器生态,是一个值得尊敬的人。