蒲公英 · JELLY技术周刊 Vol.27

这个热闹的十月终于要走到尾声,React 17 历经 4 个 RC 版本之后,也于数天前正式发布了,而同在几天前发布的 CRA 4.0 也已经完成了 React 17 的支持。虽然没有任何新特性,看似“平平无奇”的 React 17 却依旧令人神摇目夺,作为承前启后的重要版本,React 17 这样的版本升级或许会引领开源框架的新潮流。

登高远眺

天高地迥,觉宇宙之无穷

基础技术

Rust 给 web 开发生态带来的冲击

伴随着 WebAssembly 的面世,越来越多的 Javascript 工具选择使用 Rust 语言来开发。众所周知,Javascript 是单线程的,基于事件循环和垃圾回收机制;而 Rust 则是基于静态类型、没有垃圾回收机制且支持多线程的。那么,使用 Rust 开发 web 应用相较于使用 Javascript 来开发具有哪些好处?本文提供了丰富的 Benchmark 来印证 Rust 在某些场景下的性能优势,相信随着社区应用 Rust 的方案日益完善,Rust 在浏览器端也会大放异彩。

聊聊 CSS Functions

随着响应式设计的发展和日益细化,CSS 也在不断发展,并为开发者提供更多的样式控制权,本文从 min(), max(), clamp() 这三个函数来实现动态布局。

前端框架

React:发布正式版 v17.0

React 17 终于发布了,本次的发布非比寻常,它没有增加任何面向开发者的新特性,但这个版本会使得 React 自身的升级变得更加容易,想了解更多具体详情请查看更新日志。

Create React App 正式发布!

CRA 是用于创建 React 项目的脚手架,它封装了 Webpack、Babel 等工具链。最近 CRA 发布了 4.0 正式版,对工具链进行了升级,并引入了如能代替 React Hot Loader 的 Fast Refresh、PWA 相关的 Workbox、方便测试网页渲染性能指标的 web-vitals 等新工具。一起来快速了解下吧~

服务端开发

Node.js 15 正式发布

上期期刊我们提到了 npm 7 可以直接升级体验,同样它也是在升级 Node.js 15 的基本配置之一,而这个新版本的 Node.js 中还包含了许多新特性:AbortController、N-API 版本 7、unhandled rejections 默认抛出、QUIC、V8 8.6 等等。

设计哲学

临时方案传染性

迫于业务的复杂性与业务常见的紧迫性,「临时性方案」大量存在于研发工作中,常常引发「临时方案传染」,导致项目的开发越来越困难。文中分析了这种模式产生的原因,修正成本,以及应对方案,了解后有助于研发在项目过程中保持较好的开发意识。

人工智能

简单粗暴 TensorFlow.js:从安装到训练全程实例教学

对于前端来说,TensorFlow.js 充满了诱惑,它能直接在浏览器(PC/Mobile)、Node.js、微信小程序环境中进行模型部署和训练,本文除了介绍了这些优势,还介绍了如何在浏览器中使用 MobileNet 进行摄像头物体识别,让读者实践感受其魅力。

工具推介

RSLint: 一款超快的 JavaScript linter

使用 Rust 来编写的一款超快的、可定制的以及易使用的 JavaScript linter。它的目标是为整个 JavaScript 生态系统提供超快以及对用户友好的 linter。

沧海拾遗

沧海拾遗,积跬步以至千里

Serverless——云计算时代的号角

Serverless 架构即“无服务器”架构,它是一种全新的架构方式,是云计算时代一种革命性的架构模式。与云计算、容器和人工智能一样,Serverless 是这两年IT行业的一个热门词汇,它在各种技术文章和论坛上都有很高的曝光度,它就像是一把号角,宣告了云计算时代不断向着各个领域不断扩张的序幕。

CSS 预处理器已经过时了么?

十二年沉浮,CSS 预处理已经成为项目中不可或缺的一部分,很多时候我们已经非常享受于 CSS 预处理器带来的便捷,但是多年来 W3C 的 CSS 工作组也一直在持续从社区汲取营养,加快 CSS 的迭代。那么到现在为止,CSS 是否可以取代 CSS 预处理器的地位?CSS 预处理器会不会成为 CSS 过渡时期的产物呢?

「蒲公英」期刊,每周更新,我们专注于挖掘「基础技术工程化跨端框架技术图形编程服务端开发桌面开发人工智能设计哲学前端框架」等多个大方向的业界热点,并加以专业的解读;不仅如此,我们还会推介精选凹凸技术文章,向大家呈现团队内的研究技术方向。

抬头仰望,蒲公英的种子会生根发芽,如夏花绚烂;格物致知,我们登高远眺、沧海拾遗,以求积硅步而至千里。

蒲公英 · JELLY技术周刊贡献指南

欢迎关注凹凸实验室博客:aotu.io

或者关注凹凸实验室公众号(AOTULabs),不定时推送文章:

蒲公英 · JELLY技术周刊 Vol 27: 平平无奇 React 17的更多相关文章

  1. 蒲公英 · JELLY技术周刊 Vol.28: Next.js 10 发布

    蒲公英 · JELLY技术周刊 Vol.28 前端应用到底该选 SSR 还是 CSR?每个项目技术栈决策的时候都会根据实际需求有自己的看法,而在不久前 React 17 发布之后,自然而然也会有同学好 ...

  2. 蒲公英 · JELLY技术周刊 Vol.35: Flash 四宗罪?

    蒲公英 · JELLY技术周刊 Vol.35 Flash 曾是 Web 迈向新世代的福音书,它为这个世界带来了缤纷色彩,但也如伊甸园的苹果,闪耀着智慧的光芒,却四灾随行.诞生 1995 年至今 25 ...

  3. 蒲公英 · JELLY技术周刊 Vol.03

    蒲公英 · JELLY技术周刊 Vol.03 「蒲公英」期刊全新升级--JELLY技术周刊!深度挖掘业界热点动态,来自团队大咖的专业点评,带你深入了解团队研究的技术方向. 登高远眺 天高地迥,觉宇宙之 ...

  4. 蒲公英 · JELLY技术周刊 Vol.16 谷歌首个线上 Web 开发者大会

    蒲公英 · JELLY技术周刊 Vol.16 近期,谷歌有史以来的第一次线上谷歌 Web 开发者大会,Web Vitals.PWA.DevTools 和 Lighthouse 6.0 等一系列特性或产 ...

  5. 蒲公英 · JELLY技术周刊 Vol.17: 90 行代码实现 React Hooks

    蒲公英 · JELLY技术周刊 Vol.17 React Hooks 相信大家都不陌生,自被设计出以来就备受好评,在很多场景中都有极高的使用率,其中原理更是很多大厂面试中的必考题,很多朋友都能够如数家 ...

  6. 蒲公英 · JELLY技术周刊 Vol.19 从零开始的 Cloud IDE 开发

    蒲公英 · JELLY技术周刊 Vol.19 你是否也会有想法去开发一个自己的 IDE 却苦于时间和精力不足,完成 Desktop IDE 却又被 Cloud IDE 的概念追在身后难以入睡,这样的两 ...

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

    蒲公英 · JELLY技术周刊 Vol.20 性能优化是一条无尽的路,我们总是可以找到各种途径去提升体验,不论是响应时间还是按需加载,亦或是根据框架或者组件有针对性的优化都会是不错的方法.如果你在使用 ...

  8. 蒲公英 · JELLY技术周刊 Vol.22: npm i react-router@6.0.0-beta.0

    蒲公英 · JELLY技术周刊 Vol.22 近期 React Router 已经释出了 6.x 的 beta 版本,正式版本已经不远了,作为 React 生态中的重要组成部分,React Route ...

  9. 蒲公英 · JELLY技术周刊 Vol.25 · Webpack 5 正式发布,你学废了么

    蒲公英 · JELLY技术周刊 Vol.25 阔别两年,Webpack 5 正式发布了,不仅清理掉很多冗余的功能,同样也为我们带来了很多新鲜的能力,不论是默认开启的持久缓存,还是反病毒保护,亦或者被其 ...

随机推荐

  1. 原创-公司项目部署交付环境预检查shell脚本

    大型项目环境预检查脚本,根据自己实际情况修改脚本中变量,给大家一个思路~ #!/usr/bin/env bash root=$( cd $(dirname $0) pwd ) source " ...

  2. 概率派VS贝叶斯派

    机器学习中的MLE和MAP两大学派的争论: 频率学派 - Frequentist - Maximum Likelihood Estimation (MLE,最大似然估计): 频率学派认为世界是确定的, ...

  3. unity inspector 自动装载Commont和Prefab属性

    在使用unity的过程中,经常遇到这样的问题:每次都需要手动为序列化属性拖拽赋值.像这样: 试着找了找,真的找到了一份代码,但是缺少自动装载Prefab的功能.之后我花了点时间添加这个功能. 使用方法 ...

  4. 解决SpringBoot项目创建缓慢问题

    SpringBoot项目构建缓慢 快速创建springboot项目 在创建一个springboot项目的时候,往往速度会很慢,原因是下载springboot文件的默认地址是springboot官网(国 ...

  5. 058 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 05 案例:求数组元素的最大值

    058 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 05 案例:求数组元素的最大值 本文知识点:求数组元素的最大值 案例:求数组元素的最大值 程序代码及其执行过程 ...

  6. 【优化】单调队列与dp

    笔者大概看了一下单调队列对于DP的优化,故撰此文,望有帮助. (dp还是推式子难啊qwq) 例题1. 题目大意:在n个数的序列中,选择数字,使得其连续不超过k个数,且和最大. 本题的方程相对好推:设d ...

  7. tomcat:tomcat安装(在一台电脑上安装两个tomcat)

    1.安装前的说明 (1)在安装第二个tomcat之前,我们要知道安装一台tomcat的时候需要在电脑上添加两个系统变量 然后在path中配置: (2)这个时候我们就要思考了,当安装第二台服务器的时候首 ...

  8. JavaScript返回当前的时分秒

    要求: 封装一个函数返回当前的时分秒 格式 08:08:08 代码实现: function getTimer() { var time = new Date(); var h = time.getHo ...

  9. Combine 框架,从0到1 —— 5.Combine 常用操作符

    本文首发于 Ficow Shen's Blog,原文地址: Combine 框架,从0到1 -- 5.Combine 常用操作符. 内容概览 前言 print breakpoint handleEve ...

  10. 版本控制系统之基于httpd搭建私有git仓库

    在上一篇博客中,我们主要聊到了git的基本工作原理和一些常用的git命令的使用:回顾请参考https://www.cnblogs.com/qiuhom-1874/p/13787701.html:今天我 ...