黑马程序员技术交流社区
标题: 高效程序员的特征:聪明,懒惰 [打印本页]
作者: 滔哥 时间: 2014-6-5 18:25
标题: 高效程序员的特征:聪明,懒惰
这里我使用了聪明,懒惰和程序员这几个词。我说的这几个词的意思是:
正确的软件开发应该是懒惰式开发,也被称作忍耐式开发;这种开发方式的表现是,在真正动手写代码前,程序员要花大量的时间通盘考虑所有可能的解决方案和途径。这可以看作是延缓写代码,在没有完全理解问题前绝不动手写代码。先把问题理解清楚,确保将要写的代码能真正的解决问题,这将会避免之后写出大量无用的代码。
这里说的先把问题弄清楚,表现有:
你需要花大量的时间调研,来确保需求符合实情,来做工作让你和同事的交流有共同的语言语义。然而,程序员都喜欢立刻冲上去编程,喜欢在电脑前不停的敲代码。
在真正的软件开发中,只有5%的开发时间是有效率的(你可以参考《程序员开发效率悖论》)。如果你发现一个程序员用100%的时间都在盯着屏幕,那么,你看到的这个程序员是最糟糕的程序员。 如果一个程序员总是在电脑前编码,这绝对是一个不好的信号。
高效的程序员总是不断检查他对需求的理解,确保他们的代码和需求是同步的。高效的程序员是频繁的和产品经理/业务人员沟通交流,你可以经常看到他们使用白板与同事和架构师交流讨论。程序员的阅历和经验都是用来提高开发效率,这最优秀的程序员:
他们思考代码的时间增加而写代码时间减少
对问题的透彻理解使调试代码的速度更快
深思熟虑后的代码速度更快
代码长度更短
程序员从心理上讲都是喜爱自己的代码的。
烂程序员不喜欢去修改已经写成的烂代码。相比起优化自己的代码,他们更愿意简单的增加更多的代码,以此来弥补之前的缺陷。更糟糕的是,他们喜欢把责任归咎于他人。最终,一堆不好用的代码上在来另外一堆不好用的代码,整个系统变得到处是bug,极不稳定。
优秀的程序员经常也会写出烂代码,但他们能看到那些代码需要优化,哪些需要重写。优秀的程序员和不优秀的程序员的区别就在于对有问题的代码的态度,优秀的程序员的做法是:
如果代码整体上好的,那就重构代码。
如果代码整体上有问题,那就重新代码
当 代码中有需要优化或需要重写的地方时,时间拖的越久,你就越难回头解决这些问题。因为对这些代码依赖的程序会越来越多,越来越深,当你优化这些代码时,相 关的依赖也需要进行相关修改。当积累的问题越来越多时,轻松的优化/重新这些代码已经变得不可能。而使用继续增加代码的方式来弥补之前代码问题,会让系统 变得越来越不稳定。
如果脑子里没想清楚,那就懒一些,把写代码的时间往后推。
作者: 森林之王 时间: 2014-6-5 19:04
不要急于敲代码,先把需求分析清楚
作者: 韩鹏 时间: 2014-6-5 21:49
如此好文,怎有不顶的道理!
作者: nxp1986 时间: 2014-6-5 22:43
思路和思想是最重要的,代码完全可以跟着思路思想走,思路对了,代码岂有不对之说
作者: wangkerui 时间: 2014-6-6 07:22
有道理啊,是得反省反省自身了!
作者: wqmsan 时间: 2014-6-6 08:30
顶一个!!!
作者: 方杰斌 时间: 2014-6-6 08:39
感谢 分享 这个 估计是一个 享受的过程
作者: rjf078 时间: 2014-6-6 21:01
表示同感深受!亲们要多注册修养啊!
作者: xcdhr123 时间: 2014-6-6 21:37
新手还是先写注释吧。
作者: 18353666072 时间: 2014-6-7 07:33
是啊,,,
作者: Porsche911 时间: 2014-6-7 09:19
好文章,顶!
作者: AntThinking_toT 时间: 2014-6-7 09:30
先弄清楚问题再敲代码。
作者: 引子 时间: 2014-6-7 09:43
受教了,支持滔哥!
作者: 黑马—张帅 时间: 2014-6-7 10:08
成竹于胸再做事。学习了
作者: 龙泉长空 时间: 2014-6-7 11:17
如此好文,必顶
作者: 黄宝宝 时间: 2014-6-7 18:04
顶顶顶,9W的技术分!
作者: 杨胜男 时间: 2014-6-7 21:18
思路很重要
作者: XCodeRush 时间: 2014-6-7 22:38
不知聪明苦,怎知懒惰甜
作者: 魑魅魍魉121 时间: 2014-6-8 09:24
这是许多初学的人的一大病处,一上来就是敲代码
作者: 〇veに 时间: 2014-6-8 09:47
确实是这样……
作者: 面向大众 时间: 2014-6-8 20:33
优秀程序员都是从菜鸟开始做起的...他们已经过了一直敲代码的阶段了吧。
作者: 林峰 时间: 2014-6-9 00:26
谢谢分享,很好很强大
作者: brucezhu 时间: 2014-6-10 14:26
思路和思想是最重要的,代码完全可以跟着思路思想走,思路对了,代码岂有不对之说,顶顶顶
作者: 小小的黑马 时间: 2015-3-24 21:12
如此好文,怎有不顶的道理! 赞一个!!!!!!!!!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |