- 博客(5)
- 资源 (19)
- 收藏
- 关注
原创 读书报告之《修改代码的艺术》 (II)续2
修改if else 最忌惮的是天马行空,自负自己对代码的理解,直接重新改写条件语句。但另一方面,相信各位看官也注意到了,理解又是必不可少的,完全死死的做逻辑变形是异常繁琐的(这个在第二个例子中尤为明显),具体如何操作,不好意思,这就是"修改代码的艺术"。口才不行,修行还靠个人。 不要做不成熟的优化。相对来说,代码的清晰度高于性能的优化,而且很多时候两者并不是冲突的,当代码更清新了,往往有更好的优化方案。 举例中的一些代码风格,比如return快速返回,不是每个人都能接受。求同存异,这也是个人座右铭。
2014-09-08 22:27:52 1245
原创 读书报告之《修改代码的艺术》 (II)续
这里作为(II)的续篇,继续距离 复杂的嵌套if else 的处理。 为了保持篇幅不会太长,所以截断了,以一篇新的文章形式给出。化简复杂的if else语句,基本的手段针对头重脚轻的if else,使用return快速返回,从而减少嵌套层数。合并分支。有些分支的执行内容相同,往往意味着可以合并为一个分支扁平化。第二个例子,比较复杂一点,给定一个日期,即年 月 日,让
2014-09-06 09:50:10 1126
原创 读书报告之《修改代码的艺术》 (II)
4. 修改时应当测试哪些方法作者提出了影响结构图的概念。说穿了,就是CallRelation和ReferenceRelation,就是查看某个方法(变量)被哪些方法引用,以及自身又引用了哪些方法,依次类推。这个复杂的关系网实际就是一颗风险评估树(图)。通过这棵树,我们可以知道某个修改会影响到哪些节点。这项参数,既是风险的直接量化指标,同时又是验证修改的测试指标。这是很朴素的思想,不管有意无意,你肯定已经在这么做了,不要告诉我你的boss从来没问过你这样的问题:“这个修改有风险吗?”。
2014-09-05 23:39:09 1303
原创 读书报告之《修改代码的艺术》 (I)
《修改代码的艺术》,英文名《Working Effectively with Legacy Code》,中文翻译的文笔上绝对谈不上“艺术”二字,愧对艺术二字(当然译者不是这个意思)。书中第三部分不论是例子还是解说都有点混乱,远不如《重构——改善既有代码设计》一书。此书精华在于第一、二部分。如何学习这本书,作为一个最底层的码农,作为长期在别人代码上修修补补的苦逼二手货开发人员,我只能给的建议就是
2014-09-05 00:20:38 4501 2
原创 python 计算校验和
校验和是经常使用的,这里简单的列了一个针对按字节计算累加和。其实,这种累加和,使用将字节翻译为无符号整数和带符号整数,结果是一样的。使用python计算校验和时记住做截断就可以了。 这里仅仅是作为一个代码样本,权作标记,直接上代码'''Created on 2014年9月4日@author: lenovo'''import random'''实际计算校验和时,解释为无符号整
2014-09-04 22:05:28 14240 2
doxypypy--- Doxygen filter for Python
2014-08-24
TCPParser -- follow tcp stream by python
2014-08-20
CommonMakefile的帮助文档
2014-08-12
通用的makefile模板
2014-01-14
重构——改善既有代码的示例代码
2013-04-10
windows下的android源码的批量git处理脚本
2012-06-30
android adb log查看工具
2012-06-23
深入C++对象模型的读书笔记
2012-06-22
C++ProgrammingGuide
2012-06-22
Git常用操作
2012-06-22
git基本操作
2012-06-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人