Don't program by coincidence. ---不要靠巧合编程。

故事: 一个疲惫的士兵警觉的从灌木丛中钻出来,前面有一片空旷地: 那里有地雷吗?仍是能够安全经过?没有任何迹象代表那是雷区----没有标记,没有铁丝网、没有弹坑,士兵用他的刺刀戳了戳前进的地面,又赶忙缩回来,觉得会发生爆炸,没有。因而他紧张的向前走,刺刺这里,戳戳那里,最后他确信这里是安全的,因而大步向前,结果被炸成粉碎。 程序员

把侥幸当作结果,而后获得灾难。 编程

程序员: 作为开发者,咱们也工做在雷区里,应该警戒不要得出错误的结论。避免巧合编程---靠运气和偶然的成功---要深思熟虑的编程。 安全

现在项目和节奏愈来愈快,有不少一批程序员都是拷贝程序员,须要什么样的功能就上网去搜,而后拷贝到本身的程序中,尝试运行一下,成功!其实,我有时候也喜欢这么干,因而,理所固然的放入本身的程序中,并不真正理解,因而进行了几周这样的编码后,程序忽然中止了工做,你花了数个小时无法修正它,也不知道缘由何在,这个时候你可能花大量时间检查代码,都很难修正,代码就是不能正确工做。 测试

你不知道代码为何失败,引文你开始就不知道它为何能工做,假定你作的是有限测试,代码好像能工做,但那仅仅是一种巧合。如今有不少人均可能遇到过这种状况。 咱们不能依靠巧合,对吗? 编码

要深思熟虑的编程: 接口

老是意识到你在作什么. 不要让事情慢慢失去控制,直到像青蛙同样被煮熟。 事务

不要盲目编程。构建不彻底理解的应用,或者不熟悉的技术,就是但愿本身被巧合误导。 开发

按计划行事。 产品

依靠可靠的事务。不要依靠巧合或假定。 程序

不要只是测试你的代码,还要测试你的假定。 编写断言测试你的假定。

不作历史的奴隶。 淘汰老旧的不适用的代码。

本身:有的时候碰上一个很大的系统,并不想花时间去完全理解它,可是须要编程,就拿接口一遍一遍的去试,成功了就行,或者一个功能,也不喜欢去作详细的design就开始写,写到一半不舍得本身的代码,将错就错作了糟糕的实现,历来不考虑深层次的东西,维护的时候就惧怕了。其实这样花在上面的时间远不如,开始花时间去好好的理解,磨刀不误砍柴工。 甚至据说过,有的老产品实在忍受不了维护代码,程序员把本身逼的辞职的事。

总结下来,仍是程序员不要懒惰。


参考:《程序员修炼之道 从小工到专家》

相关文章
相关标签/搜索