2015年/12月/01日
编程的智慧
这是来自于阅读王垠文章 编程的智慧的笔记
编程是一种创造性的工作,是一门艺术。精通任何一门艺术,都需要很多的练习和领悟
反复推敲代码
有位文豪说得好:“看一个作家的水平,不是看他发表了多少文字,而要看他的废纸篓里扔掉了多少
写优雅的代码
优雅的代码看起来就像是一些整整齐齐,套在一起的盒子
写模块化的代码
真正的模块化,并不是文本意义上的,而是逻辑意义上的。一个模块应该像一个电路芯片,它有定义良好的输入和输出
写可读的代码
有些人以为写很多注释就可以让代码更加可读,然而却发现事与愿违。注释不但没能让代码变得可读,反而由于大量的注释充斥在代码中间,让程序变得障眼难读。
真正优雅可读的代码,是几乎不需要注释的
写简单的代码
并不是语言提供什么,你就一定要把它用上的
写直观的代码
如果有更加直接,更加清晰的写法,就选择它,即使它看起来更长,更笨,也一样选择它
写无懈可击的代码
正确处理错误
正确处理null指针
防止过度工程
过度工程即将出现的一个重要信号,就是当你过度的思考“将来”,考虑一些还没有发生的事情,还没有出现的需求
这就是为什么很多软件项目如此复杂。实际上没做多少事情,却为了所谓的“将来”,加入了很多不必要的复杂性。眼前的问题还没解决呢,就被“将来”给拖垮了。人们都不喜欢目光短浅的人,然而在现实的工程中,有时候你就是得看近一点,把手头的问题先搞定了,再谈以后扩展的问题。
先把眼前的问题解决掉,解决好,再考虑将来的扩展问题。
先写出可用的代码,反复推敲,再考虑是否需要重用的问题。
先写出可用,简单,明显没有bug的代码,再考虑测试的问题。