技术周刊 第 21 期
- 作者:
- FengShangWuQi
- 发布时间:
- 更新时间:
【前端】
1、Phenomenon:一个快速且仅2kb的底层WebGL API,基于GPU的着色器
它的核心功能是围绕如何好好利用 GPU来这一理念展开的,并且具有以下特色:体积小,仅2kb,无任何依赖;基于 GPU,性能表现出色;底层封装,高可配置性;文档详尽;动态生成/销毁实例。
链接:https://github.com/vaneenige/phenomenon
2、微前端的那些事儿
微前端是一种类似于微服务的架构,它将微服务的理念应用于浏览器端,即将 Web 应用由单一的单体应用转变为多个小型前端应用聚合为一的应用。各个前端应用还可以独立运行、独立开发、独立部署。同时,它们也可以在共享组件的同时进行并行开发——这些组件可以通过 NPM 或者 Git Tag、Git Submodule 来管理。 注意:这里的前端应用指的是前后端分离的单应用页面,在这基础才谈论微前端才有意义。
3、微信小程序的下一步:支持 NPM、小程序云、可视化编程、支持分包
7月11日,微信公开课微信小程序技术专场在上海举行,会上,微信公布了面向开发者的技术规划,内容主要包括小程序技术能力与规划、小程序生态体系、小程序性能优化三个方面。
链接: https://mp.weixin.qq.com/s/deGrFb0mhwBFZw_-e0Txbw
4、28 个顶级的 React UI 组件库,请查收
上周给大家推荐了 21 个顶级 Vue UI 组件库,这周给大家推荐 28 个顶级的 React UI 组件库, 旨在帮助大家快速开发。
5、JavaScript Blockchain
作者发布了一个教程, 通过 JavaScript 在浏览器中 6 步搞清楚区块链具体是如何工作的,这项挑战可以帮助大家更为熟悉区块链中的基本概念。
详情:https://www.chainshot.com/challenges/5b3afd70d9f99763e5c4b4fe/
6、如何监控网页的卡顿
要监控网页的卡顿,我们必须从 FPS 说起。FPS 是来自视频或者游戏里的概念,即是每秒的帧数,代表视频或者游戏的流畅度,俗话说,就是“不卡”。那在前端开发领域,网页的 FPS 是什么呢。
详情:https://zhuanlan.zhihu.com/p/39292837
7、在 TypeScript 中通过 async/await 使用 Promise
TypeScript 旨在开发大型应用程序并转换为 JavaScript。 由于 TypeScript 是 JavaScript 的超集,所以现有的JavaScript 程序也是可用的 TypeScript 程序。TypeScript可用于为客户端和服务器端开发。await 关键字是语法简写,用于指示一段代码应该异步等待其他一段代码。 让我们看看 async / await 是如何工作的以及我们如何在 TypeScript 中使用它。
链接:https://blog.bitsrc.io/keep-your-promises-in-typescript-using-async-await-7bdc57041308
8、carbon-now-cli:用命令行工具生成漂亮的源代码图
一个很棒的工具,通过命令行来生成高亮的源代码图,可以自定义字体,主题,窗口控件等。
链接:https://github.com/mixn/carbon-now-cli/
【后端】
1、基于后编译的国际化解决方案
随着业务的迭代和需求复杂度的增加,常见的国际化 I18n 插件不一定能满足相关的需求开发,本文介绍了滴滴 WebApp 架构组在做国际化项目的过程中所遇到的问题以及所做的思考。
详情:https://juejin.im/post/5b47148c518825196b01ca3a
2、为什么选择 GraphQL:优点,缺点以及替代方案
虽然 REST 被大家使用过很长一段时间,但 Facebook 近年来出现了另一种技术:它叫做 GraphQL。以下部分将向您介绍 GraphQL,它的优点,缺点,以及是否有替代方案。
详情:https://www.robinwieruch.de/why-graphql-advantages-disadvantages-alternatives/
3、Python 之父不再担任 Python 社区领导人
Python 创始人和仁慈的领导者 Guido van Rossum 决定,不再担任 Python 项目的领导人。由于 PEP 572 的讨论过程让人沮丧,使得 Guido 做出了这个决定。他说,“现在 PEP 572 已经确定,我没想到促成一个 PEP 是如此地艰难,也没想到会有这么多人鄙视我的决定。我决定不再参与决策过程。我还会继续以一个普通核心开发的身份参与项目,我也还是会去给其他人指导 -- 由于不做决策了,可能指导他人的时间还更多些。我将不再是仁慈的独裁者,以后社区决定你们自己讨论决定。
4、图解基于 HTTPS 的 DNS
本文主要介绍如何通过基于 HTTPS 的 DNS 和可信递归解析器来保护用户的数据。文章介绍了什么是 HTTP?什么是 DNS?DNS 如何被利用?欺骗攻击等等。
【其他】
1、命令行工具 — cheat.sh
cheat.sh 是一个命令行工具,更是一个实用的速查工具。试想一下,一个理想的速查工具应该具备什么功能?简洁、快速、全面、通用、不显眼。而 cheat.sh 就具有以下这些功能特性:简洁的 curl/browser 界面、涵盖 55 种编程语言,一些 DBMSes 和 1000 多个最重要的 UNIX/Linux 命令、无需安装,随处可用、超快,通常在 100 毫秒内即可返回答案、可以直接在代码编辑器中使用,无需打开浏览器。
链接:https://github.com/chubin/cheat.sh
2、当 Google 降级 Firefox Mobile 的搜索体验
2014 年,用户在 Bugzilla 递交报告称,相同的关键词搜索 Google 在不同移动浏览器上展示了不同的内容(Firefox Mobile,UC browser),其中 UC 是基于 WebKit 渲染引擎,与 Chrome 和 Safari 相同。四年后这个问题仍然没有解决。Mozilla 在与 Google 反复磋商之后仍然没有说服搜索巨人将 Firefox 移动版与其它 WebKit 浏览器一视同仁。Google 发言人在一份声明中称,Firefox 使用的是 Gecko 引擎,为确保功能兼容性需要额外的测试,它在 Firefox 桌面版做了额外测试,但移动版本的测试没有达到与桌面版相同水平。这种情况迫使 Mozilla 开发者采取了修改用户代理字符串的策略,欺骗 Google 将 Firefox Mobile 视为 Chrome。IE 统治时代的策略在 Google Chrome 支配的时代又再现了。