概述
” 于 2022 年 10 月 21 日星期五举行奇塔之夜~前端~", "我摸到了 Deno 发布的最新框架 Fresh我做了一个演讲说!
这篇文章将是一篇关于演示内容的文章!
点击这里查看幻灯片
演讲内容
“什么是 Deno?” “我知道 Deno,但是 Fresh?”新鲜的我希望这将是一个让你知道的机会!
首先,Deno 是什么?
- 我是一名 Node.js 开发人员瑞恩达尔新开发的 Javascript/Typescript 执行环境
- 由于它是通过创建 Node 时所做的改进重新创建的,因此标准安装了各种功能
- Typescript 默认支持
- 总理优先
- ESModule 支持
ETC...
-
迄今为止在 Node 中使用的 NPM 模块系统无法使用,使用 Deno 自己的模块系统进行开发。- 这是在 8 月底宣布的,并进行了重大调整。
- Deno 宣布了一项重大的政策变化。 3个月内实现对npm包的支持
它在 Deno 的官方首页上进行了总结。
Deno官方发布的“Fresh”ver1.0
- Deno 本身有其他 Web 框架,但现在德诺官方来自网络框架“新鲜的”被释放
新鲜的特点
-
德诺官方如 中所述,有六大特点。
- 即时渲染
- 基于岛屿的客户补水
- 零运行时开销
- 没有构建步骤
- 无配置
- TypeScript 支持
- 我将对一些特性进行分组并进行解释。
开发和 TS 支持无需初始设置
- Deno 在运行时使用,因此 TypeScript 可以作为标准使用。 (
tsconfig.json不需要) - deno lint,deno fmt可以使用,所以不需要设置 linter 或 formatter
-
TailwindCSS可以在创建项目时自动安装 - 可以用与 React 相同的语法编写 可以用 Preact 编写
参考:如何开始 Preact 以及与 React 的区别
无需构建步骤并根据要求渲染
- Deno 是Deno 部署假设它在 CDN Edge 环境中运行。
- 不要在部署时构建 Typescript/JSX 源代码。
->应要求提供服务器端构建的 HTML返回
->响应速度<释放速度专注于
零运行时间和水合优化
- 选择MPA代替主流SPA
- 使用 SPA 时,即使在静态页面上也会调用 JS。
- 通过采用MPA,创建静态页面时零 JS 加载变得。 (零运行时开销)
- 采用岛式建筑设计
- 如果您只想创建静态屏幕,这很好,但您可能还想使用交互式屏幕和组件。
- 采用孤岛架构解决上述问题
什么是岛屿建筑
- 岛屿建筑是天文Web 架构师模式最早由
- 屏幕用户界面静态岛什么时候动态岛通过分离设计
- 在之前的 SPA 框架中使用 SSR 时,所有组件都已水合,但岛式架构仅水合必要的组件。
- 基本上在服务器端生成静态 HTML。
- 如果您有一个需要动态内容的岛,它现在将加载 JavaScript 以进行客户端渲染。
->通过部分水合优化 JS 加载
参考:从零认识SSR Angular Universal - 什么是补水
为什么要使用岛式建筑?
- 前面提到过,用SPA框架创建静态页面会加载很多JS
- 示例是一个像“Hello World”这样的简单页面,其中加载了很多 JS
首先,静态页面不需要 JS,对吗?这就是由此诞生的架构。
案例研究(与 Next.js 相比)
我找不到 Fresh 的例子,所以 Astro 采用了类似的岛式建筑。Astro MPA 与 SPA作为参考,在使用Next.js作为基准的验证中测量了以下结果。
- 与 SPA (Next.js) - JavaScript 减少 94%
- 与 SPA (Next.js) - 加载速度提高 34%
- 与 SPA (Next.js) – 网络使用量减少 65%
SPA的时代结束了吗?
- 不,SPA 更适合具有许多动态部分的 Web 应用程序
- SPA 框架最初是为了创建动态 Web 应用程序而创建的。
- 现在流行目前,您应该使用 Next.js我认为它的诞生是与
从现在开始,前端工程师需要在SPA或MPA中选择更适合自己需求的框架这就是总结。
在最后
我们正在寻找前端工程师就 Dev Talk 交流意见!
不介意的话我们一起聊技术
原创声明:本文系作者授权爱码网发表,未经许可,不得转载;
原文地址:https://www.likecs.com/show-308631394.html