我是笨人——读Rob Pike的《Notes on C Programming 》(附全文链接)
摘要: Ken Thompson —— Unix 最初版本的设计者和实现者,禅宗偈语般地对 Pike 的原则4 作了强调:拿不准就穷举
花哨的算法比简单算法更容易出 bug 、更难实现。尽量使用简单的算法配合简单的数据结构。
只要掌握了数据结构中的四大法宝,就可以包打天下,他们是:array 、linked list 、hash table、binary tree 。这四大法宝可不是各自为战的,灵活结合才能游刃有余。比如,一个用hash table组织的symbol table,其中是一个个由字符型array构成的linked list。
阅读全文
posted @
2008-02-29 08:39 创建更好的解决方案 阅读(4437) |
评论 (4) 编辑
对工作性质的认识
摘要: 告诉别人自己每天都在写代码,其实自己一直当自己在设计软件
这就是中国式的表里不一
阅读全文
posted @
2008-01-23 18:31 创建更好的解决方案 阅读(418) |
评论 (0) 编辑
我和充斥臭味代码的战争
摘要: 从去年8月份到现在,我一直在从事一个261k行代码的项目(不含空行和注释)。
其中由我本人编写的代码10.9k行(不含空行和注释,我本人所写的注释大约1/8有效代码行,属于比较少的)。
TDD的老爹Kent说如果已经有可以运行的代码,这时候是不适合引入TDD的。对已经可以运行的261k行代码重新写测试用例,怕是要出人命的。我想Kent老爹说的是老代码从新TDD,言之有理,对于一个成年人你来T他的小DD,当然就要踢出大事情来。但是对于一些新模块,或者说是老模块需要彻底修改(几乎全部抛弃)的时候,年轻人吗,从小开始T他的小DD,慢慢培养,说不定能T出一个会铁裆功的模块来,到时候岂不是天下无敌了。
阅读全文
posted @
2008-01-12 13:00 创建更好的解决方案 阅读(2213) |
评论 (26) 编辑