什么是好的代码
2011-02-07 19:59
295 查看
1,Expressiveness(表达性):好的代码一看就能明白作者的意图,且思路清晰。比如,函数名的选择,代码的组织等
2,Coupling(耦合) 和 cohesion(内聚)的恰当平衡,耦合太多,那么修改的时候牵连太多,无法下手。内聚不够,则代码冗余严重,也不容易修改。
3,消除代码的smell(臭味),比如过多的临时变量,过长的方法,过大的类等等。
4,Generic(通用度),比如能在一定程度上适应用户的变化。
以上是纯就代码而言,如果从应用角度来看,还有很多重要方面
例如
1,代码和商业逻辑的吻合度,尽量减少用户不需要的代码。比如,可以采用BDD等
2,代码所映射的商业场景本身的价值,也决定了的代码的价值,如果代码所映射的商业逻辑本身比较小众,代码的价值也不会太高。
如果具备的以上特性的代码,就会成为有生命力的活代码。这样的代码具有高度的进化潜力,自然也就价值连城。
而所有的这一切,一个非常重要的步骤,就是重构。而具有重构能力的程序员才能拿到高薪。
优秀的程序员永远都是稀缺商品。
2,Coupling(耦合) 和 cohesion(内聚)的恰当平衡,耦合太多,那么修改的时候牵连太多,无法下手。内聚不够,则代码冗余严重,也不容易修改。
3,消除代码的smell(臭味),比如过多的临时变量,过长的方法,过大的类等等。
4,Generic(通用度),比如能在一定程度上适应用户的变化。
以上是纯就代码而言,如果从应用角度来看,还有很多重要方面
例如
1,代码和商业逻辑的吻合度,尽量减少用户不需要的代码。比如,可以采用BDD等
2,代码所映射的商业场景本身的价值,也决定了的代码的价值,如果代码所映射的商业逻辑本身比较小众,代码的价值也不会太高。
如果具备的以上特性的代码,就会成为有生命力的活代码。这样的代码具有高度的进化潜力,自然也就价值连城。
而所有的这一切,一个非常重要的步骤,就是重构。而具有重构能力的程序员才能拿到高薪。
优秀的程序员永远都是稀缺商品。
相关文章推荐
- 把下面的代码粘到地址栏里,打回车,你看到什么?
- 什么是优雅的代码?
- 以下代码的输出结果是什么?
- 代码有什么不妥之处(2015年10月20日)
- 程序员学习项目和代码的精髓是什么?
- eclipse或Studio在代码上划一条线是什么意思?
- 足以应付一切的水仙花数,字母交叉问题,数组排序去重复,今天get到一点点,首先一道题莫名其妙地改对了然后明白了自己思路是对的但是不会写代码 还是什么用都没有
- 修改代码的艺术----- 2.1 什么是单元测试
- 什么是代码混淆?andriod和android-studio工程如何启用代码混淆功能?
- 一道面试题,看这段代码最后抛出什么异常
- 这段代码输出什么?说明了什么问题?
- 下面的代码有什么不妥之处
- 什么是托管代码和托管数据
- 代码清单5-2 逗号用来做什么
- 什么叫应用程序域?什么是受管制的代码?什么是托管代码?什么是强类型系统?什么是装箱和拆箱?什么是重载?CTS、CLS和CLR分别作何解释?
- 【解惑】什么是“代码工人”
- 什么是“大端”和“小端”及一段测试本机大端还是小端的代码
- ISAM不能建立的问题不一定是什么dll文件没注册,而是网上代码太垃圾
- 当修改一些代码时,使用什么编译命令可以最有效率
- 什么是好代码?