React Scheduler 源码解析
之前一篇博客讲过React的更新过程,不过在那个博客中,任务调度使用的是浏览器的requestIdleCallback,而实际上React使用的自己实现的一个任务调度器,我们这次就开分析一下它的源码,以及React为什么要自己实现任务调度器。
本文基于React仓库中的16.18.6分支进行解读。
之前一篇博客讲过React的更新过程,不过在那个博客中,任务调度使用的是浏览器的requestIdleCallback,而实际上React使用的自己实现的一个任务调度器,我们这次就开分析一下它的源码,以及React为什么要自己实现任务调度器。
本文基于React仓库中的16.18.6分支进行解读。
最近在leetcode上遇到了几个问题都是采用二分法来解决的,总结了一下其中的规律,简单来说,如果是要从有界区间中寻找符合条件的最大值或者最小值,可以考虑采用二分法,不过不是基础的二分法,而是不断寻找左侧边界或者右侧边界的二分法。
本文我们总结JavaScript中的命令模式,组合模式和模版方法。这几个模式比较相似。
本文进行迭代器模式和发布订阅模式的总结。这两个模式算是比较经典的模式,甚至已经到了语法本身支持的程度。
函数式编程和函数式组件是现在开发的一个趋势,过去一直在用,但是没有从概念上理解,本文就把二者放在一起总结一下并进行一定的对比。
函数式编程是一种编程范式,而函数式组件是这种范式下的一种产物。
我们接着上一篇博客继续总结和学习JavaScript的常用设计模式,这一次我们总结两个在JavaScript角度来讲比较像的模式,也就是代理模式,策略模式。
这两个模式在非函数式编程编程的语言中,如Java中区别是比较明显的,但是用JavaScript来看则是比较相似的。