《构建之法》读书笔记2
【2.1】
单元测试的重要性和必要性以前并没有注意到,大部分测试是由手动遍历测试,这就导致了代码漏洞百出。一不够全面,二没有逻辑性。这部分内容给了我很好的警醒。单元化测试以及测试代码自动化都是在完成一部分新代码之后必须马上完成的事情。虽然繁琐、复杂,但是绝对不能跳过这一步。另外,回归测试中提到的问题,在以前也非常经常的遇到过,总算系统的学习到了科学性、理论性的解释和解决方法。
【2.2】
效能分析。很多情况下对我来说就是一句空话,用来撑场面的花架子,细数下来,竟然很少真正的通过数据来说明程序效能。其实看上去实现功能差不多的代码,在运行速度及效率等方面极有可能差了十万八千里。要写就要写健壮、且高效的代码。利用函数调用关系树来分析是个不错的办法,因为仅仅通过数据来判断的话很有可能矫枉过正,有失偏颇。
【2.3】
工程师在“需求分析”和“测试”这两方面明显地要花更多的时间;但是在具体编码上,工程师比学生要少花1/3强的时间。从学校到工作,明显体会出了差别。真正应用到工作上,学校里那种学院派应付了事的做法根本行不通。工作中更强调的是需求分析、功能设计、使用体验、产品完善程度等,需要功能逻辑合理、质量高的产品,而非运行一百次只成功一次、急匆匆的截图写报告、宣告完成的课题。越熟练越深入学习,越能了解到其实前期准备(即需求分析等)和后期测试(包括产品说明)扮演着究极重要的角色。
【2.4&2.5】
要看的链接、要学的文章、要做的练习好多。。。TAT还没有太多时间实践。。。跳槽的事情刚刚落定,周一第一天上班。一切开始步入正轨。
p.s.个人软件开发流程。无比感兴趣。之前在知乎看到一篇文章叫《一个人开发一款APP是一种怎样的体验》,作者一个人利用业余时间开发了一款记账app——5coins(强行安利一发,付费软件),当时就下载安装对着文章细细的研究了一遍,整个人都炸裂了,太酷炫了!功能虽然简单,但细节处处让人觉得惊喜,眼前一亮的感觉。我也要搞一个出来。