1.8 卓越代码的特征
我们所说的“卓越代码”是什么呢?在系列书的第一卷中,我给出了卓越代码的若干特征。为了设定本书的目标,这里有必要重复一下那些讨论。
对卓越代码的意义可谓众说纷纭,因而不大可能找出一种包罗万象、皆大欢喜的定义来。不过卓越代码有一些特性人们基本上都会认同,就用这些一般特性得出我们的定义吧。根据我们的意图,卓越代码有这些特性:
l 高效地利用CPU,即代码速度快
l 高效地利用内存,即代码体积小
l 高效地利用系统资源
l 易读易维护
l 遵循固定的风格原则
l 设计条理分明,遵循现有的软件工程规范
l 便于增强
l 经过精心测试,具备健壮性,即它是可用的
l 编写清晰的文档说明
我们能够很容易地再往这个清单中加入几十条项目。例如,有的程序员会觉得卓越代码要能移植,必须遵照给定的一套编程风格规范,必须以某种语言编写,或者一定不能以某种语言编写;有的人认为卓越代码一定是编写尽可能简单的代码,另一些人则认为卓越代码是能迅速写出来的代码;还有的人认为卓越代码是及时编写并在预算范围内的代码。你也可以构思有关卓越代码的其他特性。
那么何谓“卓越代码”?这里有个合适的定义:
卓越代码是恒定按照优质软件特性的优先级顺序编写的软件。特别地,卓越代码遵循一套规则,后者引导程序员在将算法实现为源代码的过程中做出各项决定。
本书将注重于编程卓越之道的一些效率方面。尽管效率并不总是软件开发工作的主要目标,然而多数人都会赞同“效率欠佳的代码算不上卓越代码”的说法。这并非意味着“如果代码不尽量有效率就不卓越”。然而整体上没有效率、明显欠缺效率的代码永远不能进入卓越代码之列。而且效率欠缺是现代应用程序的主要问题之一,所以它是个值得强调的重要话题。






