什么是Deno?Deno可能是前端的下一件大事!- jeremymorgan


Deno是一个热门的可以替换Node.js的新Javascript运行环境。每个人都在谈论它,因为这可能是下一件大事。
Deno是JavaScript / TypeScript运行环境,具有安全的默认值和出色的开发人员经验。它基于V8,Rust和Tokio构建。Deno旨在替代我们心爱的Node.js,由Ryan Dahl领导,他于2009年开始Node.js项目。该设计源于他对Node.js感到遗憾的十件事。
有几个需要注意Deno的原因:

  1. 它是由启动Node.js的人创建的
  2. 它直接解决了Node.js中的缺点

因此,这是一个良好的开端。但是,让我们看一下它背后的一些技术:
  • V8是Google的高性能JavaScript(现在是WebAssembly)引擎。Node.js和Chrome现在使用它。它可以独立运行,并且飞速发展。在最近几年中,此引擎的开发非常成功。注意:V8将JavaScript编译为本机代码,以实现超快的性能。
  • Rust是一种快速发展的系统编程语言。它没有运行时或垃圾收集器。它的主要重点是性能和内存安全性。这是Rust的其他一些很棒的东西。
  • Tokio是Rust的异步运行环境。这是一个事件驱动的平台,用于构建快速,可靠且轻巧的网络应用程序。它也非常快并且可以很好地处理并发。

那么您在这里感觉到一种模式吗?Deno由快速,轻巧和安全的技术组成。我们的起点很好。

那么为什么有新东西呢?
自2009年以来,JavaScript发生了一些变化。在这段时间内,开发,性能和功能发生了巨大变化,Node.js竭尽所能。从头开始也许是一个更好的方法。
根据Dahl的说法,这是他在Node.js中发现的一些设计问题。

  • 模块系统及其分布
  • 必须支持的旧版API
  • 安全问题

Deno旨在解决所有这些问题。
如果您使用Node.js已有一段时间,那么您将了解NPM及其怪癖。我个人认为还不错。当然可以改进。它使用中央存储库模型(npmjs.com),该模型有很多问题。
  • Deno模块可以在任何地方托管。另外,它们在本地缓存。除非需要,否则不需要更新它们。
  • Deno中集成了安全性。除非明确启用,否则它无权访问文件或网络资源。
  • TypeScript是内置的 -这完全是针对开发人员的。您可以充分利用TypeScript进行开发,并使用这些语言中所有花哨的显式类型和其他优点。

Deno承诺性能和安全性。这是一个很大的好处,但是最大的希望在于开发者的经验。它旨在使您的生活更轻松。
  • 使用Deno进行测试 -无需费力地寻找随机工具或争论什么是最好的,核心中内置了一个测试运行器。
  • 格式化代码 -您可以使用“ deno fmt”格式化文件。这是我喜欢Go的一件事。在自以为是的环境中工作有其缺点。对于开发人员来说,这也可以节省大量时间。
  • 调试 -Deno具有内置的调试功能,因此,您不必再上网搜索最佳的调试器。
  • 编译和捆绑 -有人告诉我这还不完整,但是它有一个相当不错的捆绑器,您可以期望将来会有更多的改进。

这些都是针对开发人员的改进。尽管人们可能会对速度和安全性大加赞赏,但很高兴知道对于开发人员使用Deno创建应用程序不会造成很大的麻烦。
哦,它有一个可执行文件要运行。这是有希望的。那些已经过依赖关系和破坏性变更的人都知道运行可靠的可执行文件的感觉。您可以在需要时更新它,而不必担心当时依赖关系的状况。

总结
Deno将动摇一切。它会带来:

  • 性能
  • 安全
  • 减轻开发人员的痛苦

这里有很多潜力。迪诺还承诺:
  • 遵守网络标准
  • 防止使用过时的API
  • 包含TypeScript
  • 内置工具

对于Deno而言,前途一片光明,我迫不及待地想用它来构建事物。看起来很有希望。

 

nodejs都开始走下坡路了,deno能掀起浪花?