V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
woniuppp
V2EX  ›  程序员

Deno1.0 新特性了解一下 (视频版)

  •  
  •   woniuppp ·
    shengxinjing · 2020-05-18 15:03:20 +08:00 · 1284 次点击
    这是一个创建于 1668 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近前端圈最火的技术,莫过于 5-13 发布的 deno1.0 版本,很多大兄弟私信问我怎么看这个技术, 今天上午录了个视频放 B 站,对文字稿不感兴趣的直接移步

    Deno1.0 新特性了解一下 B 站链接

    deno 是什么

    deno 和 nodejs 差不多,都是一个 javascript 的服务器运行时,和 node.js 还是一个作者,他有那些优点呢

    新特性关键点(代码)

    1. 原生支持 typescript javascript 和 webassembly
    2. es6 modules,通过 url 和文件 import
    3. 没有 npm,node_modules 和 package.json
    4. 依旧基于 V8
    5. 安全控制机制
    6. 不兼容 node 兼容浏览器
    7. 常见工具内置
      1. deno bundle 替代 babel webpack
      2. deno fmt 替代 prettier
      3. deno test 期待 jest
      4. deno lint 替代 eslint 等

    安全性和原生 ts 支持很亮

    什么技术会火

    deno 比 node 优化的地方,都是小优化,一个新技术能不能普及,这个技术本身够不够牛逼只是以方便,还有 0. 出现时机是不是填补了领域空白

    1. 填补空白后,开发者有没有跟上,贡献繁荣的生态
    2. 生态繁荣后吗,有没有大公司实战案例(意味着大流量和岗位)
    3. 单纯的技术优势,只是小玩具,而且你怎么知道 node 不会加上这些特性,维护自己的防护林呢 ,比如 node 也跟进 url import,自带 typescript

    看法

    node 的出现,是填补 js 做后端不给力的空白,填补前端自动化的空白,干柴烈火,直接火了,就像现在出现一个新的游戏,可玩性稍微领先王者荣耀,皮肤稍微好看一点点,你就能一年赚几百亿吗 想啥呢 大兄弟

    就像 parcel,号称零配置,到今天依然是各小众的竞品项目, 源码实现的非常有呀,值得学习源码,但是新手还是 webpack 把

    问题

    1. webpack,jest,eslint,babel 等生态内置,看似好消息,但是整个前端社区全体维护这么多年的成熟项目,一个 deno 团队很难替代 至少没法应对这么多诡异的需求 , 你去看下 webpack 那快 7000 个 issue 就知道
    2. 包管理感觉和 npm 没有本质区别,而且不太好管理版本,我觉得以后还会加入
    3. 远程包的安全问题 隐患
    4. 用 go 吹上天,现在抛弃 go 用 rust 又被吹上天,我严重怀疑这是一波人

    总结

    deno 是个很有意思的小工具,但不是下一代的 nodejs,如果有一天有大流量的项目大面积使用,才有学的价值,现在这个时间点只能作为玩具玩玩,如果不准备研究源码,就别学了

    Node 还会持续繁荣,就像因为早起的一些设计缺陷,javascript 的作者不是很喜欢 js,但是由于出现的时候填补了浏览器脚本的空白,外加生态的繁荣,让 js 一直火爆到今天

    而且新技术的研究伴随着高风险和高收益,我直接说一个简单的规则,如果你的月薪低于 2W,那还是先不着急研究高风险的新技术了,如果你的月薪高于这个,可以考虑搏一搏,研究一下 deno 的源码,万一以后火了,你就是早起的布道者

    很多人喜欢分享这个图,用来表达 deno 的强大,我也喜欢这张图,但是我看到的,deno 只是一波沙尘暴, 想建设强大的 node 社区,需要大量的时间积累

    期待 deno 有新的发展,也看好 node 继续繁荣

    小广告

    欢迎点赞关注 一起早起学习源码

    1 条回复    2020-05-18 20:37:50 +08:00
    Rrrrrr
        1
    Rrrrrr  
       2020-05-18 20:37:50 +08:00
    N






    hello world
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1197 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 23:52 · PVG 07:52 · LAX 15:52 · JFK 18:52
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.