蒲公英 · JELLY技术周刊 Vol.20: Vue3 极致优化——分析 Vue3 Compiler 告诉你为什么这么快

蒲公英 · JELLY技术周刊 Vol.20
性能优化是一条无尽的路,我们总是可以找到各种途径去提升体验,不论是响应时间还是按需加载,亦或是根据框架或者组件有针对性的优化都会是不错的方法。如果你在使用 Vue3,那么本期内容会告诉你如何完成高性能的渲染函数;React 的开发者也可以在本期中找到 TS 和 React 的最佳实践;同样本期中你也会找到新一代 Web 性能体验的指标,学无止境,术有乾坤,让我们开启本期的内容吧。
登高远眺
天高地迥,觉宇宙之无穷
前端框架
TypeScript + React 的最佳实践
使用 TypeScript 编写 React 应用的类型 Cheatsheets,也可以看做是 TypeScript + React 最佳实践。它介绍了我们在使用 React 各种特性时最佳的 TypeScript 类型写法,帮助你解答各种类型上的问题。看完这篇,妈妈再也不用担心我不会写 tsx 了。
Vue3 Compiler 优化细节,如何手写高性能渲染函数
Vue3 通过编译时和运行时相配合,让 diff 性能进一步得到提升。文章详细介绍了 Compiler 会对模板分析出哪些关键信息,运行时又是怎样利用这些信息对 diff 进行优化的。假如我们不编写 template 而是直接编写渲染函数,作者也在文末介绍了我们怎么样编写渲染函数能够让 diff 进入优化模式。文章整体内容非常硬核,需要花费一定时间的进行阅读,希望读者能坚持到到最后。这里姑且引用文章中的最后一句:"Don't stop learning...",共勉。
基础技术
Core Web Vitals--聚焦新一代Web性能体验指标
对于如何衡量用户体验,Google提供了多个工具(Lighthouse等等),在Chrome83中新增了Core Web Vitals指标。主要关注用户体验的3个方面:加载、交互性和视觉稳定性。对应的指标为:LCP、FID、CLS。降低使用者门槛。
美国人如果把根域名服务器封了,中国将会从网络上消失?
自从美国宣布“清洁网络”行动后,很多懂点网络的人,第一反应是,美国人会下手根域名服务器吗?这里先给出简要回答:不排除这种可能性,但并不是没有办法。一句话原因:虽然根不在我们手里,但我们有镜像。
图形编程
“亲亲抱抱举高高”?这款游戏满足你对VR的所有期待
虚拟现实的概念在近几年被提及的越来越频繁,但对于大众来说似乎还是一款“科幻”产品。由 Valve 公司出品的《半衰期》VR 游戏,结合 VR 设备操作上更为多样的操控设备,进行了不同于以往鼠标键盘操控游戏的交互尝试,使得游戏中的角色动作更为接近真实世界,也产生了更多的可能性。
人工智能
3D特效师可以下班了
还记得“抢钱大楼” SM 娱乐公司门口的电子屏海浪吗?一看就很贵。但 DeepMind 和斯坦福等一众科学家研究出了一款图网络模拟器——GNS 框架,转变思路,由当前市场上普遍使用的通过物理规律进行 CG 计算,转向机器学习以实现物理模拟器的方案。这将大大降低 CG 特效的门槛,可能将深远地影响到这一市场。
沧海拾遗
沧海拾遗,积跬步以至千里
京喜小程序跨端开发实战
京喜小程序的在跨端开发上的开发与优化实战文,详细讲述了 19 年双十一期间,京喜改版中面临的一系列问题,以及相关的思考。其中对于 Web、小程序、RN 三端详细提出了很多思路和实践集锦,很值得借鉴。
小程序体验评分满分优化
同样是京喜小程序,历经多次改版和优化后,在 Audits 评分中已经获得了满分。文中提到了多种优化的细节和方法,尝试了很多优化的可能,相信这些思路能够在其他的项目中,也能够得到应用,并大幅提升性能和用户的体验。
「蒲公英」期刊,每周更新,我们专注于挖掘「基础技术、工程化、跨端框架技术、图形编程、服务端开发、桌面开发、人工智能、设计哲学、前端框架」等多个大方向的业界热点,并加以专业的解读;不仅如此,我们还会推介精选凹凸技术文章,向大家呈现团队内的研究技术方向。
抬头仰望,蒲公英的种子会生根发芽,如夏花绚烂;格物致知,我们登高远眺、沧海拾遗,以求积硅步而至千里。
欢迎关注凹凸实验室博客:aotu.io
或者关注凹凸实验室公众号(AOTULabs),不定时推送文章:

蒲公英 · JELLY技术周刊 Vol.20: Vue3 极致优化——分析 Vue3 Compiler 告诉你为什么这么快的更多相关文章
- 蒲公英 · JELLY技术周刊 Vol.16 谷歌首个线上 Web 开发者大会
蒲公英 · JELLY技术周刊 Vol.16 近期,谷歌有史以来的第一次线上谷歌 Web 开发者大会,Web Vitals.PWA.DevTools 和 Lighthouse 6.0 等一系列特性或产 ...
- 蒲公英 · JELLY技术周刊 Vol.22: npm i react-router@6.0.0-beta.0
蒲公英 · JELLY技术周刊 Vol.22 近期 React Router 已经释出了 6.x 的 beta 版本,正式版本已经不远了,作为 React 生态中的重要组成部分,React Route ...
- 蒲公英 · JELLY技术周刊 Vol.30: 此路不通?Vue 3 新提案 Ref-sugar
蒲公英 · JELLY技术周刊 Vol.30 随着 Vue 3 发布,相关的新闻也逐渐火热起来,而近期 RFC 中两个新的提案也因为某乎上的一些事情变得广为人关注.Ref sugar和script s ...
- 蒲公英 · JELLY技术周刊 Vol.03
蒲公英 · JELLY技术周刊 Vol.03 「蒲公英」期刊全新升级--JELLY技术周刊!深度挖掘业界热点动态,来自团队大咖的专业点评,带你深入了解团队研究的技术方向. 登高远眺 天高地迥,觉宇宙之 ...
- 蒲公英 · JELLY技术周刊 Vol.17: 90 行代码实现 React Hooks
蒲公英 · JELLY技术周刊 Vol.17 React Hooks 相信大家都不陌生,自被设计出以来就备受好评,在很多场景中都有极高的使用率,其中原理更是很多大厂面试中的必考题,很多朋友都能够如数家 ...
- 蒲公英 · JELLY技术周刊 Vol.19 从零开始的 Cloud IDE 开发
蒲公英 · JELLY技术周刊 Vol.19 你是否也会有想法去开发一个自己的 IDE 却苦于时间和精力不足,完成 Desktop IDE 却又被 Cloud IDE 的概念追在身后难以入睡,这样的两 ...
- 蒲公英 · JELLY技术周刊 Vol.25 · Webpack 5 正式发布,你学废了么
蒲公英 · JELLY技术周刊 Vol.25 阔别两年,Webpack 5 正式发布了,不仅清理掉很多冗余的功能,同样也为我们带来了很多新鲜的能力,不论是默认开启的持久缓存,还是反病毒保护,亦或者被其 ...
- 蒲公英 · JELLY技术周刊 Vol 27: 平平无奇 React 17
蒲公英 · JELLY技术周刊 Vol.27 这个热闹的十月终于要走到尾声,React 17 历经 4 个 RC 版本之后,也于数天前正式发布了,而同在几天前发布的 CRA 4.0 也已经完成了 Re ...
- 蒲公英 · JELLY技术周刊 Vol.28: Next.js 10 发布
蒲公英 · JELLY技术周刊 Vol.28 前端应用到底该选 SSR 还是 CSR?每个项目技术栈决策的时候都会根据实际需求有自己的看法,而在不久前 React 17 发布之后,自然而然也会有同学好 ...
随机推荐
- luogu P1784 数独 dfs 舞蹈链 DXL
LINK:数独 这道题好难 比DXL模板题要难上不少. 首先 还是考虑将行当做决策 那么 一共有\(9*9*9=729\) 个决策. 考虑列用来填充 需要有的条件为 某个位置能能放一次\(9*9\) ...
- electron-react-umi模板
electron-react-umi-tpl github English Version 更新日志: 2020-06-08 添加全量更新功能 2020-06-29 添加远程增量更新功能,无需下载包来 ...
- Spring中使用MyBatis Generator
简介 MyBatis Generator 是由MyBatis官方提供的MyBatis代码生成器.可以根据数据库表生成相关代码,比如POJO.Mapper接口.SQL Map xml等. 使用方式 MB ...
- 10分钟 Castle.Windsor 适配 Asp.Net Core 3.0
Asp.Net Core 3.0以上,不再能通过修改Starup.ConfigureServices返回值(IServiceProvider),所以只能调用IHostBuilder.UseServic ...
- Pytest单元测试框架-学习
pytest: Python的一个单元测试框架,基于UnitTest二次开发,语法上更加简洁,可以用来做Python开发项目的单元测试,UI自动化.接口自动化测试等,有很多的插件访问Pytest插件汇 ...
- Eclipse Java EE IDE for Web Developers 4.5.1 安装hibername tools 插件
方式一:在线安装(太慢) 方式二:离线安装,下载hibernate tools 插件到本地,然后在eclipse菜单栏点击 help: ①添加插件,选择下载后的插件,内容框中可选择hibernate ...
- 改变对象的字符串显示__str__repr
改变对象的字符串显示 # l=list('hello') # # print(l) # file=open('test.txt','w') # print(file) class Foo: def _ ...
- easyPOI使用
更多的easyPOI资源的网在easypoi的官网. 1 在pom.xml中添加依赖 <dependency> <groupId>cn.afterturn</groupI ...
- javascript对象笔记
JS对象 对象是一个具体的事物 在JS中对象是一组无序属性和方法的集合例如字符串,数组,函数等等 对象是由属性和方法组成的 属性:是事物的特征,在对象中用属性来表示一般 ...
- JavaScript 中 Blob对象的初步认识
Blob Binary Large Object的缩写,二进制大对象 虽然在前端中开发并不常见,但是实际上MySql数据库中,可以通过设置一个Blob类型的数据来存储一个Blob对象的内容 语法 le ...
