可维护性
什么是可维护性:
如果说代码是可维护的,它需要遵循以下的特点:
(1)可理解性:其他人可以接手代码并理解它的意图和一般路径,而无需原开发人员的完整解释。
(2)直观性:代码中的东西一看就能明白,不管其操作过程多么复杂。
(3)可适应性:代码以一种数据上的变化不要求完全重写的方法撰写。
(4)可扩展性:在代码架构上已考虑到在未来允许对核心功能进行扩展。
(5)可调试性:当有地方出错时,代码可以给予你足够的信息来尽可能直接地确定问题所在。
实现代码可维护性的路径:
代码上的约定
- 可读性
要让代码可维护,首先它必须可读。可读与代码作为文本的格式化方式有关。可读性的大部分内容都是和代码的缩进相关的。可读性的另一方面就是注释。
一般而言需要注释的地方:
(1)函数和方法:每个函数或方法都应该包含一个注释,描述其目的和用于完成任务所可能使用的算法。
(2)大段的代码:用于完成单个任务的多行代码应该在前面放一个描述任务的注释。
(3)复杂的算法:如果使用了一种独特的方式解决某个问题,则要在注释中解释你是如何做的。
(4)Hack:因为存在浏览器差异,JavaScript代码一般会包含一些Hack,需要注释解释下。 - 变量和函数命名
适当的给变量和函数起名字对于增加代码的可理解性和可维护性是非常重要的。
一般命名规则:
(1)变量名应为名词如car或person。
(2)函数名应该以动词开始,如getName()。返回布尔类型值的函数一般以is开头,如isEnable()。
(3)变量和函数名都应使用合乎逻辑的名字,不要担心长度。长度问题可以通过后处理和压缩来缓解。 - 变量类型透明
有三种表示数据类型的方式:
(1)初始化,当定义了一个变量后,它应该被初始化为一个值,来暗示它将来应该如何应用。
var found=false;
var count=-1;
var name="";
var person=null;
初始化为一个特定的数据类型可以很好的指明变量的类型。但缺点是无法用于函数声明中的函数参数。
(2)使用匈牙利标记法来指定变量类型。JavaScript中最传统的匈牙利标记法是单个字符便是基本类型:"o"代表对象,"s"代表字符串,"i"代表整数,"f"代表浮点数,"b"代表布尔型。
var bFound;
var iCount;
var sName;
var oPerson;
匈牙利标记法的好处是函数参数一样可以使用。但它的缺点是让代码在某种程度上难以阅读。
(3)指定变量类型的方式使用变量注释。
var found /*:Boolean*/ =false;