第六章的题目是:“当你编码时”,很多时候,我们都认为编码阶段就是机械的把设计转换为可执行的语句,但是事实并不是这样,如果编码是机械工作,那么相对人工,机械早就能代替人工。当我们编码时,要批判地思考所有的代码,包括我们自己的,只要我们在制作代码,那么你就要记住总有一天你会对其测试,所以要让代码易于测试。
第一部分是“靠巧合编程”,作为开发者,我们都工作在雷区里,我们要警惕,有时候错误的结论对程序来说是致命的。有时候一段代码看起来能工作,测试也没有问题,但是它可以工作也许只是个巧合,可能在特定的场景下它可以运行,但是换个地方就不行了,在一开始就把代码编的完美能解决后面很多的麻烦。
再就是“算法速率”,前面看过“估算”这一小部分的内容,我们知道估算是很重要的,估算算法使用的资源,有一种叫做“bigO”的近似算法可以给我们表示算法。它可以为资源消耗建模。最快的算法对程序来说可能并不是最好的,如果你使用的算法成本太高,那么它就和它的运行时间相对矛盾,使得算法不再适用。
“重构”,没有按照计划完成的事物会被清理,修理或重做,称为重构,当代码不再合适时,重构是很重要的,很多时候人们不愿意因为代码不完全正确就撕毁代码,但是当一个程序出错时,修改很难将错误解决时,重写就是唯一的方法。
下一部分是:“易于测试的代码”,当设计模块或是单个例程时,你需要仔细地考虑边界条件和其他问题,没有什么修正错误的方法比从一开始就避免发生错误更好。当我们编写时,我们可以将每个单元拿出来测试,经常运行一些单元,对我们是有帮助的。
最后一部分:“邪恶的向导”,不可否认,应用的编写变得越来越困难,为了让编码变得简单,有了叫做“向导”的东西,它是为了我们能更快的编程准备的,但是如果里面有你不明白的内容,那就尽量不要用,不然在后面的维护时将会难上加难。
标签:编码,读书笔记,小工,我们,程序员,算法,测试,重构,代码 From: https://www.cnblogs.com/liurujun/p/16938563.html