今天主办人|下午茶

本期每日由 丘山子 担任制作。

PS:主办人现在正在招募中,有感兴趣的掘友们能够联系Captain

酱酱们的下午茶全新改版,欢迎咱们多提宝贵意见!

本文字数2000+,阅读时刻大约需求 6 分钟。

  • 【酱的下午茶】亮点:
  • 还在用 JS 做节省吗?CSS 也能够防止按钮重复点击
  • 大屏经典组件:“无限翻滚” 从分析到开发
  • WebRTC 从实战到未来!第二篇,前端完成一个最简音视频通话
  • APK 是怎样来的?- Android 构建流程解析
  • 工作中对InheritableThreadLocal运用的思考
  • 解读JVM级别本地缓存Caffeine后来居上的要诀 —— 缘何会更强、怎么去上手
  • 记一次生产中运用CompletableFuture遇到的坑
  • ……

挑选规则:文章发布时刻在本期「酱的下午茶」发布时刻的1-3天内,且契合社区引荐规范,也会同步发布在相关技能社群。

每日干货|下午茶

主办人们会对近期(1-3天)社区深度技能好文进行发掘和挑选,优质的技能文章有机会出现在下方列表,排名不分先后。

『前端』

  • 大屏经典组件:“无限翻滚” 从分析到开发

阅读本文,你将

  1. 了解大屏 “无限翻滚组件” 的开发思路
  2. 跟从作者,一步步完成一个高性能 “无限翻滚组件” 的开发
  3. 收获一份该完成的粗糙源码。
  • 为什么同一表情’‍♂️’.length==5但’‍♂’.length==4?本文带你深化了解 String Unicode UTF8 UTF16

为什么同样是男人,但有的男人'‍♂️'.length === 5,有的男人'‍♂'.length === 4呢?

这二者都是JS中的字符串,要了解本质原因,你需求明白JS中字符串的本质,你需求了解 String Unicode UTF8 UTF16 的联系。本文,深化二进制,带你了解它!

  • 还在用 JS 做节省吗?CSS 也能够防止按钮重复点击

众所周知,函数节省(throttle)是 JS 中一个十分常见的优化手法,能够有用的防止函数过于频繁的履行。

举个比方:一个保存按钮,为了防止重复提交或许服务器考虑,往往需求对点击行为做必定的限制,比方只允许每300ms提交一次,这时候我想大部分同学都会到网上直接拷贝一段throttle函数,或许直接引证lodash东西库

btn.addEventListener('click', _.throttle(save, 300))

其实除了 JS 方法, CSS 也能够十分轻易的完成这样一个功用,无需任何框架库,一同看看吧

  • 一篇文章带你了解 React 中最“臭名昭著”的 useMemo 和 useCallback

作为一个 React 开发者,假如你一直觉得 useMemouseCallback 这两个 Hook 比较难以了解,那么别害怕,事实上许多人都如此。我和其他公司许多的 React 开发者交流过,大多数对这两个 Hook 都是一知半解的状况。

这篇文章就为你答疑解惑,为咱们介绍这两个 Hook 的具体作用,它们的完成原理以及在实践开发中怎么运用。

这篇文章更适合初/中级 React 开发者用于加深对 React 的了解,假如你才刚刚开始学习 React ,那么你也能够先将这篇文章保藏起来,在你对 React 有了必定运用经验后再回来学习。

  • WebRTC 从实战到未来!第二篇,前端完成一个最简音视频通话

这一篇文章咱们仍然是以这种方法为主,不过这一篇需求了解的概念会比上一篇多一些,但是我并不会为它大书特书,所以当有一些概念性的东西,你在看的时候觉得自己不是特别了解的话,聪明的你,必定要记住多借助搜索引擎来帮助自己 ~ ),我主要会讲一些在示例中必须要了解概念,以便让咱们不会看到大量的协议或许名词概念直接劝退,目的是快速上手。

『后端』

  • 工作中对InheritableThreadLocal运用的思考

最近在工作中结合线程池运用 InheritableThreadLocal 出现了获取线程变量“错误”的问题,看了相关的文档和源码后在此记载。

  • MySQL】MVCC详解与MVCC完成原理(MySQL专栏发动)

本文是:MySQL事务隔离机制与完成原理详解,的深化学习,咱们在了解MySQL事务隔离机制与完成原理后,了解什么是MVCC,MVCC的完成原理,最终剖析当前读和快照读与MVCC和事务隔离的联系,更加全面和深化的MySQL事务隔离机制。

  • 解读JVM级别本地缓存Caffeine后来居上的要诀 —— 缘何会更强、怎么去上手

在前面的几篇文章中,咱们一同聊了下本地缓存的着手完成、本地缓存相关的规范等,也聊了下Google的Guava Cache的相关原理与运用方法。比较心急的小伙伴现已坐不住了,说到本地缓存,怎样能不提一下“地上最强”的Caffeine Cache呢?

  • MySQL 是怎样加行级锁的?为什么一会是 next-key 锁,一会是间隙锁,一会又是记载锁?

之前我写过一篇关于「MySQL 是怎样加行级锁的?」的文章,跟着我写 MySQL 锁相关的文章越来越多时,后来发现当时的文章写的不够具体。

为了让咱们很清楚的知道 MySQL 是怎样加行级锁的,以及怎么用指令分析加了什么行级锁,所以我重写了这篇文章

  • 记一次生产中运用CompletableFuture遇到的坑

事务功用描述:有一个功用是需求调用根底渠道接口拼装咱们需求的数据,在这个功用里边咱们要调用屡次根底渠道的接口,咱们的入参是一个id,但是这个id是一个集合。咱们都是运用RPC调用,一般常规的想法去遍历循环这个idList,但是呢这个id集合里边的数据可能会有500个左右。说多不多,说少也不少,主要是在for循环里边屡次去RPC调用是一件特别费时的工作。

『移动端』

  • APK 是怎样来的?- Android 构建流程解析

APK 主要由五个部分组成,分别是: Dex:.class 文件处理后的产品,Android体系的可履行文件 Resource:资源文件,主要包括 layout、drawable、animator,经过 R.XXX.id 引证 Assets:资源文件,经过 AssetManager 进行加载 Library:so 库寄存目录 META-INF:APK 签名有关的信息

  • 标题:你必定没这样办理过WKWebView的磁盘办理–WKWebsiteDataTypeDiskCache

越来越多的App安装到用户的手机上,导致iPhone的磁盘缺乏。笔者就经常需求去删去一些缓存、卸载一些不必的App,来削减咱们磁盘空间的占用,这个时候,就会去通用设置界面,去把一些磁盘占用大的App删去掉。来开释一些磁盘空间。各个App厂商都在研讨怎么削减磁盘缓存占用,降低App被卸载的风险。

兴趣码上共享|下午茶

作者 代码介绍 作者简介
跟我一同秃秃秃 神庙3d模型展示 全干工程师

投稿专区|下午茶

咱们能够在评论区引荐认为不错的文章,并附上链接和引荐理由,有机会登上下一期。文章创立日期必须在近1-3天内;能够引荐自己的文章、也能够引荐他人的文章。