工作4周的总结--多读代码,改变反射脑

前言

感觉这周终于有点步入正轨了,晚上12点左右打卡下班,早上睡到9点半,起来热个牛奶,收拾收拾去公司。相比上周,没有了额外学习的时间。

逻辑的碰撞,改变反射脑

不足

覆盘一下, 这周在实现一些功能的时候,只有一个感觉,就是“”。
具体:

  1. 花20%的时间写bug,然后花60%找bug(如前一篇所言,一方面是设计阶段的没做好,另一方面是自己写代码的思路不好
  2. 在check别人代码的时候,反应很慢,一方面是心理因素(心理对看别人代码有种抵触),另一方面则是对别人代码逻辑的不熟悉,需要花时间去了解

多读代码,逻辑的碰撞

在前一篇总结中就写到,代码可以反应一个人的逻辑。一个项目需求如果由一千个人来做,可能会有一千种逻辑实现,虽然最后可能都会达到同样的功能,但实现的细节可能千差万别。

那么问题来了,哪种逻辑是算最好的?自古有“文无第一,武无第二”的说法,写代码可以算在“武”里面,因为有明确的衡量指标(如“内存使用”, “代码量”,“可扩展性”等等)。

在写代码的时候,人们往往会按照自己的直觉来写(换种说法,就是条件反射),一气呵成。然后写完了,发现某些功能支持的不全,或者没有拓展性,面对更多需求的变化,只能推倒再来

那么问题来了, 有改变自己直觉的方法么?

答案是有,就是去多读优秀的代码,多思考优秀的逻辑。

在读的时候可以按照如下的流程:

  1. 这个函数实现了什么功能
  2. 先想想这个功能要是自己来实现的话,会怎么实现,用到哪些数据结构,这么做内存使用,可扩展性如何
  3. 再看别人是如何实现的,与自己的想法有无一致
  4. 如果别人的逻辑比自己的优秀,可以做笔记把实现逻辑记录下来,每天读一遍,强行改变条件反射

套用一句话,“读书破万卷,下笔如有神”,闭门造车不可取。

另“反射脑”一词在《阿里工程师的自我修养》的 “如何在工作中快速成长? 致工程师的 10 个简单技巧”一文中出现,里面详细探讨了“认知升级”的方法,感触颇多,感兴趣的同学可以看看。

最后在此先立个小小的flag,希望在今年结束之前,可以看完TensorFlow(v1.2)core部分的源码,进行总结学习。

计划

另每天都做的俯卧撑还在坚持,已坚持21天,累计806个。

3月28日:
俯卧撑,45个。 (累计515个)
已坚持 15 天

3月29日:
俯卧撑,46个。 (累计561个)
已坚持 16 天

3月30日:
俯卧撑,47个。 (累计608个)
已坚持 17 天

3月31日:
俯卧撑,48个。 (累计656个)
已坚持 18 天

4月1日:
俯卧撑,49个。 (累计705个)
已坚持 19 天

4月2日:
俯卧撑,50个。 (累计755个)
已坚持 20 天

4月3日:
俯卧撑,51个。 (累计806个)
已坚持 21 天

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章