「 Deno is a simple, modern and secure runtime for Javascript and TypeScript that uses V8 and is built in Rust.」
翻:Deno 是使用 V8 并内置于 Rust 的 Javascript 和 TypeScript 的简单,现代且安全的运行时。
我可以是站在「 Nodejs 之父」的肩膀上,始了解和使用。
真香警告:Promise 法 + TypeScript 支持 + ES 模 + ...
「 deno 这个名字就是来自 Node 的字母重新组合( Node = no + de ), 表示"拆除 Node.js"( de = destroy, no = Node.js )。」
自阮一峰老的日 http://www.ruanyifeng.com/blog/2020/01/deno-intro.html 。
github https://github.com/denoland
官 https://deno.land/
![]() | 1 autoxbc 2020-05-15 02:25:12 +08:00 感觉 api 还不太稳定,印象中 readdir <=> readDir 这种反复变动好几次,估计 1.0 之后也不会冻结的 |
![]() | 2 JayLin1011 OP @autoxbc 正式版 13 才,不定是常,但是不妨我了解和,人得 vue3 和 Deno 有空都可以先了。「我到,我看,我征服。」,俱就是王道。 |
![]() | 3 Hanggi 2020-05-15 06:42:00 +08:00 ![]() 跑不了 React 或者 Angular 之前是不可能火的。 |
![]() | 4 chengxiao 2020-05-15 06:50:28 +08:00 我是越来越不懂前端了...折腾劲儿真大 |
6 zhengdai1990 2020-05-15 07:11:30 +08:00 via iPhone 不来,来不动 |
![]() | 7 dartabe 2020-05-15 07:26:51 +08:00 据大神说没有解决痛点 只是作者偏执的要实现自己的想法 |
![]() | 8 GaoJian 2020-05-15 07:41:01 +08:00 前端真乱 |
9 jinliming2 2020-05-15 07:47:47 +08:00 via iPhone 来来来,学学学,更新技术栈…… 看起来终于把 node 里那些烦人的东西解决了大半了…… 先试试,看看能不能 duang duang duang 吧…… |
10 fakeshadow 2020-05-15 07:57:49 +08:00 玩了一阵子,感觉没库可用。等各位大神丰富了生态我再来吧。 |
![]() | 11 xiaket 2020-05-15 08:01:52 +08:00 等 endo 的时候再来吧 |
![]() | 12 k9982874 2020-05-15 08:04:19 +08:00 via iPhone ![]() 楼上说前端圈乱的,还真就把 node.js 只当前端工具链使啊 |
13 seakingii 2020-05-15 08:16:39 +08:00 ![]() 个人感觉比 Deno 比 Node 爽多了. 底子好,再发展发展比 Node 有前途. |
![]() | 14 rioshikelong121 2020-05-15 08:28:29 +08:00 这楼里面的弱智言论可真多啊。 哈哈哈哈 |
![]() | 15 duan602728596 2020-05-15 08:32:24 +08:00 via iPhone 不会有人认为 node 的依赖只能写版本号吧,不会有人认为 node 不支持 github 地址吧 |
![]() | 16 hareandlion 2020-05-15 08:37:49 +08:00 不来,一样是新语言,golang/rust 不更好玩?出卖灵魂的工作语言的话,用什么都一样 |
17 seakingii 2020-05-15 08:44:56 +08:00 当前本人会尝试使用 deno,当库 /生态成熟时,应该会用来替代 node.js 在相关的项目. |
![]() | 18 ss0xt 2020-05-15 08:47:50 +08:00 |
![]() | 19 janxin 2020-05-15 08:48:55 +08:00 不来不来,用 JS-like 为什么不用 Node ? 不能使用这么多 npm 包,为什么不用其他的语言? |
![]() | 20 murmur 2020-05-15 08:51:21 +08:00 现在什么风气,东西好用不好用不谈,以前是造轮子,现在先造个语言再说 |
![]() | 22 murmur 2020-05-15 08:57:27 +08:00 ![]() 以前后端搞模板渲染得时候,前端做前后端分离,等现在后端开始做接口弄前后端分离的时候,她又把渲染扔回后端了 真的是前端的嘴,骗人的鬼 |
![]() | 23 12tall 2020-05-15 09:02:27 +08:00 持观望态度 |
![]() | 24 huruwo 2020-05-15 09:05:45 +08:00 弱弱的问一句现在还有人只用 jq 吗 |
25 me876 2020-05-15 09:07:34 +08:00 我就想知道 deno 有没有 node_modules 这个恶心人的东东了 |
![]() | 27 JayLin1011 OP @chengxiao ,原生 JS 才是王道,jQuery 天下第一。 |
![]() | 28 JayLin1011 OP @zhengdai1990 我不,我不是,我有,是他了,是他先手的。 |
![]() | 29 JayLin1011 OP @dartabe 作者一直很偏, GO 到 Rust,有各性能,改了又改。 |
30 max1024 2020-05-15 09:24:49 +08:00 不来。我觉得前端目前已经足够了。 |
![]() | 31 JayLin1011 OP @GaoJian 神仙打架,看官。 |
![]() | 32 LiuJiang 2020-05-15 09:25:21 +08:00 没啥意义,Deno 作者想干掉 node_modules,就这么简单。 |
![]() | 33 JayLin1011 OP @fakeshadow 你忙造子=。= |
![]() | 34 JayLin1011 OP @seakingii 出答案。 |
![]() | 35 JayLin1011 OP @rioshikelong121 物以聚,人以群分,好你比睿智和出。 |
![]() | 36 JayLin1011 OP @hareandlion 不是新言。。只是一兼容 JS 和 TS 的行。 |
![]() | 37 JayLin1011 OP @seakingii 然取代 node 比早,但使用是的,冒精神也是程序的秀品,走出舒圈就是步的第一里程碑,你的方向是正的。 |
![]() | 38 betulac 2020-05-15 09:32:53 +08:00 什么时候转换工具出来了我自然就支持了 |
![]() | 39 collery 2020-05-15 09:34:36 +08:00 前端你们是真的折腾 |
40 Chenamy2017 2020-05-15 09:37:04 +08:00 早起的我一脸懵逼。 |
![]() | 41 lancelock 2020-05-15 09:41:30 +08:00 说实话,宁愿他放弃支持 js,只支持 ts |
42 lneoi 2020-05-15 09:55:35 +08:00 慢慢来 还得等几年发展 |
![]() | 43 JayLin1011 OP @ss0xt 自然之前端生化史。。 |
44 chenyu0532 2020-05-15 10:09:30 +08:00 等你们人肉测试了。。。 |
![]() | 45 windfarer 2020-05-15 10:10:54 +08:00 学不动 |
![]() | 46 LeeeeeeezQ 2020-05-15 10:11:15 +08:00 'deno' = 'node'.split('').sort().join(','); |
![]() | 47 JayLin1011 OP @janxin 「 Any application that can be written in Javascript, will eventually be written in Javascript 」。Jeff Atwood 翻:「一切可用 JS 的用,最由 JS 或 TS 。」阿特伍德定律 |
![]() | 48 JayLin1011 OP @12tall 可能是恐不可,去提 issues 。 |
![]() | 49 JayLin1011 OP @max1024 知足常。 |
![]() | 51 JayLin1011 OP @me876 有是有,但模和包是要的,提供一更多元化的行和更一的生。 |
![]() | 52 JayLin1011 OP @betulac 不存在的。 |
![]() | 53 JayLin1011 OP @lancelock 只要你支持了 TS,JS 不也支持了? TS 之後就是 JS 。 |
![]() | 54 cai314494687 2020-05-15 10:28:13 +08:00 |
![]() | 55 Mark24 2020-05-15 10:36:48 +08:00 ![]() 作为前端,觉得早早抛弃掉 JS 以及其系列就对了 JS 不够优秀,历史包袱中,混乱,BUG 多美名其曰特性,毕竟是短时间搞出来的,本来不是这样用的。 JS 能够大行其道就是对浏览器具有垄断权 应该重点完善 Webassembly,然后让所有语言都可以接入浏览器。 浏览器未来想要成为主流平台、游戏、视频、软件 app 、AI 、科学计算等等,JS 太混乱了扛不住 让合适的工具做合适的事情吧 别折腾了 |
![]() | 56 imlinhanchao 2020-05-15 11:01:07 +08:00 前面一堆前端的,是有看 Deno 的介啊。Deno 重解的是 Node 的後端,主要方向也是在此。 |
![]() | 57 JayLin1011 OP @Mark24 Deno 支持 WebAssembly 程序。JS 不要器,要 Serverless 。 |
58 namelosw 2020-05-15 11:23:46 +08:00 @Mark24 讲真我猜 node 和 deno 估计以后是主流 WASM runtime,其实现在已经支持了。 而且 WASM 主流浏览器都已经支持了,compile 到 WASM 是各个语言自己的事情了。 只不过大部分社区都在等现成的 GC,懒得自己写 runtime,所以大部分 WASM 成熟的语言都偏 bare metal,比如 C/C++,Rust,Go 。 |
![]() | 59 leega0 2020-05-15 11:33:24 +08:00 万物皆可 import |
![]() | 60 crella 2020-05-15 11:40:30 +08:00 让谷歌垄断某个领域的坏处早就出现了。 希望 GNU 、Mozilla 、Microsoft 在编程语言方面减少谷歌的垄断,哈哈。 |
![]() | 61 DT27 2020-05-15 11:47:26 +08:00 求前端歇歇吧。。。 |
![]() | 63 hahaayaoyaoyao 2020-05-15 12:19:57 +08:00 @murmur 其实不需要后端渲染引擎也可以获取到的, Google 就会执行 js 的 |
64 fantasybei 2020-05-15 12:25:18 +08:00 node, deno,enod,oden,endo....... |
65 james122333 2020-05-15 12:48:10 +08:00 大而全... |
![]() | 66 lancelock 2020-05-15 13:02:19 +08:00 @JayLin1011 所以为什么一定要有 ts 转译 js 这个过程? |
![]() | 67 JayLin1011 OP @lancelock 那你得器了,他不 TS 。 |
![]() | 68 lancelock 2020-05-15 14:39:56 +08:00 @JayLin1011 你在说啥呢,代码在 deno 这个运行时里跑,又不在浏览器里跑,关浏览器啥事 |
![]() | 69 VtoExtension 2020-05-15 15:02:34 +08:00 社区也回答过不要想着 deno 去取代 nodejs 。 0.x 和 1.0 API 改了不少,建议不要用于生产环境, 我用来写单文件脚本的, 如果你觉得 bash 不够用,python 又不会用,但自己熟 JS/TS 那这玩意适合了 |
70 myon 2020-05-15 15:10:29 +08:00 看了下文档,已经有类似 go mod 的`Import maps`了,估计最后包管理整得跟 go 差不多 npm 生态现在也有 cdn 可以转换 目前比较缺的是编辑器支持 |
71 chenluo0429 2020-05-15 15:39:17 +08:00 @lancelock ts 没有运行时,编译成 js 就可以白嫖 js 的运行时。否则要么自己实现一套 ts 的运行时,要么实现一个 ts 到二进制的编译器 |
![]() | 72 resist 2020-05-15 15:48:54 +08:00 已经放弃了 JS/div> |
![]() | 73 miao666 2020-05-15 15:55:19 +08:00 via Android 准备今年学习下 Javascript,变化太大了有点看不懂了 |
74 threeEggs123 2020-05-15 16:12:01 +08:00 via Android ![]() 来不?来了,来了吗?快来了。来了,来了。还来吗,来不了。 |
![]() | 75 lancelock 2020-05-15 16:26:08 +08:00 @chenluo0429 所以他写了 deno 为啥不彻底点,写个 ts 的执行引擎替换掉 v8,不然又有多大意义,来来回回在 js 这首破船上缝缝补补 |
![]() | 76 libook 2020-05-15 16:48:31 +08:00 我一直都感觉说“Deno 将来要取代 Node”听起来就像是“Elasticsearch 将来要取代 MongoDB”或者“Go 将来要取代 C++(事实上 Go 初期确实是这么宣传的)”,本身在设计和定位上都是有区别的东西,硬生生捆绑在一起,引起一轮又一轮争论,但这种争论对于讨论的问题本身是没有什么意义的,反而对新技术的推广有很好的的效果…… 我个人比较信服 The Hype Cycle,Deno 目前应该是结束第一阶段开始第二阶段的快速增长,但我选择等第四阶段稳步上升期再看看。 感兴趣的可以深入了解一下技术细节,了解得越深,就能在越客观的角度上看待一项技术。 |
![]() | 77 AV1 2020-05-15 17:05:42 +08:00 ![]() |
78 Cryse 2020-05-15 17:20:14 +08:00 坐等大佬们先踩坑... |
79 stillyu 2020-05-15 17:50:33 +08:00 1. deno 原生支持 typescript,所以不太需要 is-number 这样的包,不会造成数量庞大的依赖包的现象 2. 都用 deno 了,大多数都会用 typescript 开发的 3. 前端的工具链太多,转换过来难度比较大,但后端造轮子是很快的,特别是像 typeorm 这种本来就是用 ts 写的库 |
![]() | 80 cmdOptionKana 2020-05-15 18:01:57 +08:00 @libook Go 官方不可能宣传要取代 C++,有没有 GC 是本质区别。怀疑你记错 Rust 了。 不仅 Go,任何有 GC 的语言都不可能宣传取代 C/C++。 另外,Deno 的情况比较特殊,不能用其他事情去类比。Deno 的作者就是 Node 的作者,他自己出来演讲说 Node 不好(说法是 js 发展太快已经与开发 Node 当时的情况不匹配),取名为 Deno 也是故意带着与 Node 对着干的意思。 |
81 daimen 2020-05-15 18:17:19 +08:00 来不了,什么快速低成本切换方式出来了再说 |
82 lookas2001 2020-05-15 18:24:44 +08:00 设计很喜欢,现在在等生态移过去。 自 es6 标准化了 module 后,node 好像因为设计问题一直没跟上标准,出了个 deno 直接跟过去 say goodbye 也挺好的。 话说 web 这是要接替 java 完成全平台统一的大业啊。 |
![]() | 83 libook 2020-05-15 18:38:33 +08:00 @cmdOptionKana 我只是在吐槽当前舆论风气。 只因为当年 Google 说公司内部需要在一些用途用 Go 来代替 C++开发,然后各大媒体就争相宣传 Go 要取代 C++的气氛,以至于前几年有大量的帖子说如何从 C++迁移到 Go,给人一种错觉,Quora 、Reddit 、Medium 上也有很多人表示疑惑究竟要不要从 C++切换到 Go,Google 内部的 C++开发者也一直在吐槽用 Go 取代 C++是无稽之谈。 Go 官方确实没有说要替代 C++,就像 Deno 官方也没说要替代 Node,人家 ry 只是在 PPT 里讲了一些过去的经验并引出 Deno 的想法,就被媒体歪曲成“ry 怒批 Node 的几宗罪,扬言开发 Deno 取代之”。 一个当年典型的宣传 Go 的文章 https://medium.com/@edvindizdarevic/golang-the-next-language-to-learn-for-developers-2c7c32b8a095 可以看到,C 语言之父背书(对应 Node 之父背书),里面还拿 Go 和 C/C++作比较(对应拿 Node 作比较),提到了 C/C++的一些缺点(对应 Node 的设计失败),是不是像极了如今的情形。 Rust 和 Go 的纷争是后来的事情,但是呢,在深入了解之后就能发现,这两个语言的发展方向区别还挺大的,Go 现在是服务开发最热,Rust 现在是系统开发和中间件开发的趋势,所以说讨论哪个好哪个不好真没啥意思。 |
84 dioxide 2020-05-15 20:20:53 +08:00 设计上看有击中痛点, 表示看好. 另: 不折腾就不是前端圈了 |
85 hantsy 2020-05-15 20:58:00 +08:00 太多了,写不动了,还是与 Node 合并吧。 |
![]() | 86 markocen 2020-05-15 22:14:17 +08:00 昨天看了看 Deno, 感觉很香. 和 Node 比起来更像一门完整的编程语言. 目前看运行时的稳定性和安全性也比 Node 高不少 |
![]() | 87 murmur 2020-05-15 22:29:43 +08:00 还有人梦想接替 java,前端还在造轮子的时候,java 已经构建了一个帝国,java 每个方面不是最优,但是可以拼凑起一个庞大的设施,而且不需要什么高超的技术就可以让他工作的还可以 |
88 shiwoya 2020-05-15 22:49:38 +08:00 node 还没搞懂 ,又来个 deno 后面是 done ? |
![]() | 90 JayLin1011 OP @lancelock 那你得自己了,你是得只兼容 JS 好,是得同兼容 JS 和 TS 好,竟你 TS,不代表人也 TS,作者肯定不放 JS 群的,竟先 JS the First, then TS 。 |
![]() | 91 JayLin1011 OP @VtoExtension 在考生境,只是一新生。其他本言,也不用特跟 node 比,一是 10 年前,一是 10 年後,node 出生的候都有 Promise 。 |
![]() | 92 JayLin1011 OP @libook 新的西出肯定和主流碰撞比才能在某程度上得到宣和推,我只需要行必要的了解和,至於用不用技,各有所。 |