Algorithm
主要是为了编程训练和学习。每周至少做一个 leetcode 的算法题(先从Easy开始,然后再Medium,最后才Hard)。进行编程训练,如果不训练你看再多的算法书,你依然不会做算法题,看完书后,你需要训练。关于做Leetcode的的优势,你可以看一下我在coolshell上的文章 Leetcode 编程训练 - 酷 壳 - CoolShell。
[中等] 11. 盛最多水的容器
感受:审题之后能感觉到是动态规划之类的解法,但是写不出来。使用了冒泡的暴力解法,果然报超时错误。看了题解之后,使用了两边向中间的夹逼解决,通过了测试用例。这样的题得靠经验,只能靠刷题来积累了。
Review
主要是为了学习英文,如果你的英文不行,你基本上无缘技术高手。所以,需要你阅读并点评至少一篇英文技术文章,我个人最喜欢去的地方是http://Medium.com(需要梯子)以及各个公司的技术blog,如Netflix的。
What the heck is a ‘thunk’?
点评:thunk 可以认为是包了一层函数,这样能延迟执行,类似计算属性。从文中了解到 redux-thunk,很简洁的一个库。有 2 个感受:
- 有些东西的代码实现并不难,难的是设计思想
- 开卷有益,在看一篇文章的时候,能顺便了解到其他的东西
Tip
主要是为了总结和归纳你在是常工作中所遇到的知识点。学习至少一个技术技巧。你在工作中遇到的问题,踩过的坑,学习的点滴知识。
如何设置 debounce/throttle 中的 leading 和 tailing?
a_b_cd_ef_g_h | default | leading=true | tailing=true |
---|---|---|---|
debounce | tailing=true ce____h |
adf | ce____h |
throttle | leading=true & tailing=true acd_efh |
acd_efh | acd_efh |
看了 lodash 中的 throttle 和 debounce 的实现,才知道 throttle 是基于 debounce 方法来实现的,只不过两者的 leading 和 tailing 的默认值不同。
Share
主要是为了建立你的影响力,能够输出价值观。分享一篇有观点和思考的技术文章。
2022 年的 CSS: https://zhuanlan.zhihu.com/p/452468980
CSS 新特性越来越多,再过 2 年连 CSS 也不会写了。。。😭