专栏名称: 程序员之家
程序员第一自媒体,与你探讨码农人生路上遇到的各类泛技术话题,定期为你推荐码农人生思考、感悟以及启迪!
目录
相关文章推荐
程序员的那些事  ·  3 个“芯片镖客”犯了 28 ... ·  18 小时前  
程序员的那些事  ·  董事长刺死CTO(2):董事长早已写好复仇名 ... ·  18 小时前  
程序员的那些事  ·  刚刚!TypeScript 之父宣布一重大好消息 ·  昨天  
码农翻身  ·  微软发明了世界上最流行的编程语言! ·  2 天前  
51好读  ›  专栏  ›  程序员之家

没有对比就没有伤害,优秀的代码VS糟糕的代码

程序员之家  · 公众号  · 程序员  · 2017-10-26 10:53

正文

如果你还没有发现代码质量的区别,如果你从未见过优秀的代码,或者从未见过糟糕的代码,那么本文将以直观地对比,告诉你代码质量究竟会有多大的区别。




[ 代码量 ]




我们知道代码量显示着功能的复杂程度,例如Windows XP的代码量超过2000万行,Linux内核有1500万行(2012年)。然而代码量和功能数量之间并非线性关系。


优秀的设计中,代码量和功能数的关系是这样的:



糟糕的设计中,代码量和功能数的关系是这样的:



优秀的系统往往会有优秀的结构设计:层次清晰、职责单一、模块化,方便扩展或者复用。功能的添加往往只是在现有框架中添加少量代码。

然而糟糕的设计中,层次混乱、互相耦合、难以阅读,既难以复用又不易扩展。每当被要求添加功能时,不得不几乎完整地实现整个功能的流程,并修复与原系统的所有兼容问题。




[  注释 ]




优秀的代码中,注释是这样的:



糟糕的代码中,注释是这样的:


最愚蠢的程序员都能写出机器能读懂的代码,而优秀的程序员能写出人可以读懂的代码。

程序的注释是为了让人读得懂。多数优秀的代码中,注释几乎接近代码行数的一半,描述函数功能、解释参数配置、指出陷阱所在。而糟糕的代码中不仅不含这些注释,甚至会保留大量残余代码,可读性差又难以重构。




[  命名 ]




优秀的代码中,命名是这样的:









请到「今天看啥」查看全文