2021年,快速Deno上手指南

简介: 2021年,快速Deno上手指南

image.png

前言

又是一年春草绿。无数个技术框架在更新,在成长。那么,什么前景巨大呢?我想,Deno,值得拥有!

Deno介绍

Deno是一个简单、现代、安全的JavaScript和TypeScript运行环境,它使用V8引擎,基于Rust开发。

V8是Chromium项目为GoogleChrome和ChromiumWeb浏览器开发的开源Java脚本引擎。

Rust是一种多范式编程语言,关注性能和安全性,特别是安全并发性。

Deno作为2020年正式发布的一款运行框架,具有以下特性:

  • 默认情况下是安全的。除非显式启用,否则不能访问文件、网络或环境。
  • 支持开箱即用的TypeScript。
  • 只分发一个独立的可执行文件(deno)。
  • 具有内置的实用程序,如依赖信息查看器(deno info)和代码格式化程序(deno fmt)。
  • 有一套经过审查(审核)的标准模块

Deno发展历史

image.png

Deno架构

image.png

Deno安装

安装相当简单。Deno 能够在 macOS、Linux 和 Windows 上运行。Deno 是一个单独的可执行文件,它没有额外的依赖。

安装Deno有两种方法。

  1. 官方下载,手动安装
  2. 使用命令,自动安装
官方下载

可以从官方的deno发布页面下载发布的文件。image.png

以Windows操作系统为例,下载文件 deno-x86_64-pc-windows-msvc.zip ,解压缩之后,就是一个独立的可执行的exe文件。

image.png

命令安装

根据不同的系统,使用不同的安装工具

Shell (Mac, Linux):

$curl -fsSL https://deno.land/x/install/install.sh | sh

PowerShell (Windows):

$iwr https://deno.land/x/install/install.ps1 -useb | iex

Homebrew (Mac):

$brew install deno

Chocolatey (Windows):

$choco install deno

Scoop (Windows):

$scoop install deno

Build and install from source using Cargo

$cargo install deno

更多的安装说明,可以参考deno_install

Hello World

下载安装之后,我们可以实战我们的HelloWorld程序了。采用官方的Welcome.ts,进行演示。

下载Welcome.ts
image.png
运行命令 :
deno run https://deno.land/std/examples/welcome.ts

image.png

更复杂的尝试

编写一个ts文件

import { serve } from "https://deno.land/std@0.88.0/http/server.ts";
const s = serve({ port: 8000 });
console.log("http://localhost:8000/");
for await (const req of s) {
  req.respond({ body: "Hello,First Deno Program\n" });
}

运行

deno run --allow-net ts/test.ts

image.png

运行异常

上述更复杂的尝试,我们可以看到命令上加上了 --allow-net参数。

正常运行命令

deno run test.ts

image.png为什么会发生异常呢?

默认情况下,Deno是安全的。因此,除非我们特别启用它,否则deno模块对文件、网络或环境没有多余的功能。所以,我们需要明确地授予权限。

       –allow-net – 访问网络

       –allow-read – 读文件

       –allow-write – 写文件

Deno标准库

Deno 提供一组标准模块,它们经过核心团队审计,保证能在 Deno 上工作。标准库地址:https://deno.land/std/

Deno第三方库

Deno可以从web上的任何位置导入模块。

为了更容易使用第三方模块,Deno提供了一些内置工具,如Deno info和Deno doc。

总结

让我们总结一下关于deno js入门的所有学习。

  • Deno不是node js的替代品。
  • Deno是 JavaScript和TypeScript的安全运行环境。
  • 如果广泛使用typescript,那么deno.js允许去掉额外的javascript编译器,比如babel。
  • Deno不使用npm,也不使用npm包.json.

如果仍有疑问,请参阅deno手册了解更多信息。

2021年,新的尝试,新的开始。快搞起来吧!!

目录
相关文章
|
存储 缓存 Rust
一文读懂 Deno
一文读懂 Deno
277 0
|
3月前
|
JavaScript 前端开发 Serverless
前端全栈之路Deno篇:Deno2.0与Bun对比,谁更胜一筹?可能Deno目前更适合serverless业务
在前端全栈开发中,Deno 2.0 和 Bun 作为新兴的 JavaScript 运行时,各自展现了不同的优势。Deno 2.0 重视安全性和多平台兼容性,尤其是对 Windows 的良好支持和原生 TypeScript 支持;而 Bun 则以卓越的性能和简便的开发体验著称,适合快速迭代的小型项目。两者在不同场景下各具特色,Deno 更适合企业级应用和serverless,Bun 则适用于追求速度的项目。
346 1
|
5月前
|
API 开发工具 图形学
从零开始的PICO教程(1)Pico游戏开发项目配置
这篇文章是PICO游戏开发的入门教程,详细介绍了如何注册成为PICO开发者、创建组织和应用、导入PICO的SDK、配置Unity项目以及完成项目设置的整个流程。
从零开始的PICO教程(1)Pico游戏开发项目配置
|
5月前
|
算法 机器人 API
Nvidia Isaac Sim代码编程 入门教程 2024(7)
Nvidia Isaac Sim 2024年的代码编程入门教程,涵盖了Isaac Sim环境的配置、核心API的使用以及如何利用Python API搭建基本仿真demo。
617 0
|
7月前
|
Kubernetes Go 开发工具
怎样上手cobra
Cobra是Go语言中一个强大的命令行构建工具,被知名项目如Docker、Kubernetes和Etcd广泛使用。它支持完善的特性,如帮助、子命令和标志。创建命令时,通常包括命令、参数和标志。
|
8月前
|
JSON JavaScript 前端开发
Deno 快速入门
Deno 快速入门
|
8月前
|
缓存 安全 JavaScript
Deno 命令行界面
Deno 命令行界面
|
IDE 机器人 开发工具
Python语言快速上手
Python语言快速上手
72 0
|
存储 JavaScript 前端开发
硬核!全能 Deno 高手篇 下
硬核!全能 Deno 高手篇
322 0
|
Web App开发 编解码 JavaScript
硬核!全能 Deno 高手篇 上
硬核!全能 Deno 高手篇
318 0