问题驱动学习
学习、读书、了解一个系统都要以问题为导向,要多给自己提问题,然后再试图去解决问题,在解决问题的同时又给自己提出新的问题,知道把整件事搞通搞透。[@more@]
从失败中学习,从问题中学习
成长的重要途径就是不断经历失败,经历的失败越多也就意味着成长的机会越多,要点是不要在同一个地方跌倒两次,不要被同一个问题难倒两次。[@more@]
把自己的爱好当作一项事业来经营
....[@more@]
逻辑清晰是代码质量的保证
保证代码质量的一个要点就是逻辑清晰,只有逻辑清晰才能保证测试覆盖所有情况。若发现无法理清代码逻辑和功能逻辑时,那最初的设计肯定是出了问题。[@more@]
有了自动化的测试手段是否一定能够保证代码质量
最近在和别人完成一个三人小项目,我们写了自动化的测试脚本,本以为随着时间的推移,我们找的的bug越多,修复的bug越多,软件质量也就越好,但是实际情况却是找到并修复越来越多的bug,并不意味着软件质量变好,在修复的过程中,我们往往使用了一些不恰当的修复方法(临时拼凑的方法),结果修复后的代码更容易出现bug,且已被修改的面目全非。这里需要吸取两点教训:1 在软件设计之初考虑全面对于软件质量至关重要;2 不断的回归测试并不一定能提高软件质量。如果使用一些临时拼凑的方法,没有从软件结构上、本质上找到bug众多的原
为什么写代码前先写注释
注释不仅仅能够增强代码的可读性,而且写注释的过程是一个思考代码功能的过程,与代码比起来,寥寥几句注释更能够将功能抽象描述出来。从反面角度来说,如果一段代码的注释很难写,也就证明了该段代码所要实现的功能比较混乱,该段代码也就需要重写了。注释作为一种引导思维的手段,应该写在代码前,而不是代码后。[@more@]
读书的态度
读书时要从多个角度进行思考,不仅要看字面意思,还要不断追问这些文字意味着什么,不仅要以读者的角度来思考,还要以作者的角度来思考。特别是在技术类文章时,不仅要以学习者的角度来思考问题,还要以实际构建者的角度来思考问题,假设自己就是作者,假设自己遇到了和作者同样的问题,自己会不会得出和作者同样的结论。要点是思考的同时要反思,反思的要点是从多个角度进行思考。[@more@]
复杂度
复杂的问题和简单的问题的本质不同在哪里,两者的解决方案在结构上有什么不同,问题的要点是什么?什么事偶然复杂度,什么事本质复杂度? [@more@]
第一篇blog
对于自己的第一篇blog,思考再三,不知该如何下笔。虽然一直以来都想维护自己的一个blog,但是由于本人太赖,又不善文字,因此一直没有下这个决心。现在既然开了这个blog,还是努力把它维护好,不能再做虎头蛇尾的事了。希望自己能够通过维护自己的blog,学会思考,学会总结,学习别人的长处,改掉自己的短处,把写作当做一个思考的过程。在此文字立据,以勉励自己~~ [@more@]