-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
备稿: deno v1.0 (5月13日) #11
Comments
现在 Node.js v14 出了, https://github.com/nodejs/node/releases/tag/v14.0.0, 要不要做个对比? |
还有就是 deno v1.0 下个月就要正式发布了. 到时候好好整理一下? |
马上就要迎来第一个大版本号了, 可是 BREAKING Changes 还是不断, 我觉得真好啊. |
最近 deno 的 BREAKING Changes 主要是整理代码, 将可以从标准库中择出来的都择出来. 强大简洁的标准库是目标. |
我也关注,哈哈哈 |
简单易用的 API 很重要,可以很好的将 web 前端用户导流过来。特别是 browser Compatible 是 deno 目标之一。 |
关注中,期待ing |
期待ing 1.0 !!! 3天 |
因为家里有事, 所以拖了几天. 最近大家也都在热议. 我觉得看新闻, 评论什么的都是在嘴炮吧. 纸上得来终觉浅, 绝知此事要躬行. 感兴趣的人可以真的试试, 先拿来替换一下以前用 Node.js 写的小工具. 线上的业务代码我还是不建议大家现在就换, 虽然说出了正式版本, 但是稳定性, 尤其是 API 上还是存在一些问题. 在非正式版时, 我就一直开始使用 deno 了, 真的觉得小工具的话, 完全没问题. 大多数需要第三方的, 其实自己也可以写写. 只是一旦涉及复杂应用, 比如我想用 AWS SDK, 这时候才产生一些问题, 我总不能把 SDK 再写一遍吧, 我也不是 Amazon 的员工. 生态还是很重要的, 但不影响大家感兴趣, 不影响大家尝鲜. |
Deno v1.0
什么是 Deno
安全的 JavaScript 和 TypeScript 运行时.
使用 V8 作为底层的 JavaScript 运行时引擎, 使用 Rust 作为底层系统接口.
如何拼读
一般写作 Deno, 如果在描述具体功能时可以使用首字母小写.
因为 Logo, 我一般会读 dinosaur 的音,
dainə
. 我也不知道官方希望我怎么读.为什么要有 deno 这个项目
主要相对 Node.js, 我认为有以下优势:
比如有 fetch.
比如跟随 V8 支持 top-level await.
其他我不认为是优点, 但也列出以下:
性能如何
Deno 本身有基于最新 master 分支的基准测试 benchmarks, 主要对比 Rust 上限及
Node.js.
从官网给出的测试来看, 目前网络性能与 Node.js 基本相似.
我比较早开始使用 deno, 0.12 之前吧. 当时 deno 的性能不够好, 基本被 Node.js 吊打.
但随着不断优化, 会越来越好的. 尤其是上限给出的 Rust, 在不断贴近.
但毕竟, JavaScript 不是性能见长的语言, 也没必要太刻意追求性能. 不拖后腿就好.
如何使用
因为只有单文件, 使用应该不难.
基本上, 如何使用 Node.js 就如何使用 Deno.
需要注意, 因为模块化问题, 与 Node.js 的依赖是不通用的.
但如果引用的是源代码, 并且内部是纯 JavaScript 而没有引用 Node.js, 那么其实是
可以通用的. 不过仅限我自己写的一些东西, 其他没测过.
权限列表
这点文档做得真不好, 我没有找到. 不过可以通过源代码看到, 有如下权限:
当然, 目前还有权限功能不完善的问题, 比如这则 issue 中提到, 现在 workers
还是不能细分权限, 只能继承全部权限.
相关问题
Q: 那么多方法全部放在
Deno
这个对象内, 好傻.A: 首先, 这样也没有造成什么变量污染, 其次, 这里仅仅存放必要的方法,
大多数需要的其他方法, 在标准库中找就好了, 不会导致体积太大. 浏览器的
window
对象不也这样嘛, 无可厚非.
Q: 有
await Deno.writeFile
了为什么还要Deno.writeFileSync
?A: 於我心有戚戚焉. 但具体看代码可以知道, 二者并不相等. 理论上来说,
同步的会快一些.
Q: 前端天天搞新东西, 没意义.
A: 不一定会解决所有人的问题, 但一定会解决一些人的问题. 有需要就用, 不需要就不用.
The text was updated successfully, but these errors were encountered: