早课--持续记录,有空记一点点

1.每天挤地铁内心是疲惫的,所以放首灵魂慢歌,静静,思考今天又哪些任务,以及怎么美美的过完这一天,是一件幸福的事情。

2.一个天才的程序员,能在无知的情况下,总能想出一个解决问题的方案!一个笨的程序员,总是偶尔才能想出问题的解决方案。一个聪明的程序员记住基础知识,和别人用过的技术性知识,然后在关键时刻总能借鉴并运用。勤于记住“聪明”的方案

3.每次写完代码都要回头看看自己的代码,有哪些可以改进的。实现学习闭环。


4.最近发现一个的技术栈就跟计算机的内存一样,我们总希望脑袋里面装的东西的价值达到最大(最大利用率)。

瞬间就联想到计算机的内存的置换算法:MRL(most recently used 最近最常使用的)和LRU(least recently used 最近用的最少的)。

有时候用的比较多的,未必是对我们有用,比如以前用c++开发,现在用Java开发。所以优先考虑最近使用。

再回来分析内存,内存相对于cache 来说,还是充分。所以内存要解决的问题是怎么腾出空间,换句话,就是要把价值不高的给踢出内存。

内存瞬间相对于cache是挺大的,但是他仍然装不下最近使用的所有内容(假定4个小时内被使用的,都定义为最近使用的,这里我们按照时间排序,就可以找出那些事最近使用的)。这时候我们需要按照使用的次数来再一次排序。把使用次数较少的给踢出去。——LRU算法就这样完成了。

而对于cache,这个昂贵的小盒子。我们要考虑不是要踢谁出去了,而是要请谁进来。我们仍然按照时间排序,找出最近使用的。然后再按照使用次数,把使用次数最高的请进来。——-MRU算法。

2种算法都是基于一个假设“经常被用的都是好的”。这是偏见,生活中无处不在,学习成绩好的都是聪明人,长得帅的都是好男人,矮子搓都是屌丝,高富都是帅比。要颠覆这些观念,就要让这些规律反过来,毕竟观念来自于实践。

2种算法都是针对实际需要来绝对要MRU还是LRU。

如果空间比较大的,但是又不想浪费的,比如大公司,就采用LRU,将浑水摸鱼的踢出去。

而像高级实验室或者是白宫(小公司的话,不属于上述两种情况,我只是做客观分析,好残酷)这种宝贵的资源,只能采用MRL算法了。


5.相关的组件的版本要根据发行日期来选版本,否则会出现版本相互不兼容,然后报奇怪的BUG,万一遇到了就只能一步一步去debug了

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值