毋庸置疑,在做实际的开发工作前,设计一套规范,并在在整个的开发过程中,遵守这个规范,将大大有利于代码编写以及后期的维护。这种规范包括站点文件存放设计、变量命名方式、编码风格等。
当然,规范的目的在于代码编写时整体的统一和易于理解。这样你在后期维护这套程序时,就不会因为自己混乱的编码风格而重新大量的阅读和理解曾经编写的代码了。另外,这也节约了其他人阅读、修改你所创建的程序的成本。
这里我向你介绍我的一般编码的习惯规范,当然,每个人都有自己的习惯,这个规范不是强制的,但是对于每个人来说,都应该在项目中设计并严格的遵循自己的规范。我的规范仅供你来参考。
首先来说文件存放的设计,每当新建一个项目时,我一般会创建如下一套目录树,如图8.11所示,用来存放站点的程序文件:
图8.13
这里我着重说明一下js目录和include目录。
Js目录下存放站点前台页面所使用的JavaScript脚本文件,因为我们可能经常使用第三方提供的免费JavaScript框架库或者效果库(如Prototype.js、jQuery)等,因此我们特别建立了文件夹lib,用来存放这些脚本文件。
而在include目录下可能存储很多内容,例如常用的函数和各种已经开发完毕可以供代码重用的“类”文件,这时我们建立目录lib,并将“类”文件放入lib目录中。
除了上面的图中所列出的文件夹,我一般根据需要还会在站点根目录建立这样几个文件夹,他们都下划线开头,并且在站点发布时一般不予发布,建立这些文件夹仅为了存储和项目相关的一些文件:
l _backup 用来存储项目各个版本的备份。
l _documents 用来存储项目的开发文档、使用说明、更新日志等。
l _db 用来存储项目的数据库定义说明。
l _templates 用来存储不包含ASP代码的网站模板或者模板效果图。
接下来我们再来说程序编程风格的规范。
对于页面代码的安排,要尽量使ASP代码和页面本身的HTML代码分开,尽量使得HTML代码中不存在大块的ASP代码,如果可以,尽量将数据都存放在变量当中,并在HTML代码中以<%=变量%>的方式调用,这样在修改页面布局设计时,会比较方便。
通常,在一个页面中,尽量将ASP代码都写在HTML代码前,这样便于阅读和修改。
在每个页面的顶端都加入预处理指令<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>来显式的指定当前页面所使用的脚本语言是VBScript,页面编码为936,即简体中文,这样即使服务器的默认设置有变动,你的程序仍然可以正常运行。
在每个页面的顶端加入强制声明变量的指令<%Option Explicit%>,使得自己保持良好使用变量前声明的编程习惯,同时避免出现由于变量名拼错而导致的错误。
使用循环、判断等语句要使用tab键缩进,如果循环或者变量比较复杂,在其开始时需要以注释方式加以说明该段代码的作用。
函数的编写需要对函数进行注释,在函数开始时说明函数的目的以及输入输出参数的说明,例如:
'函数作用:截取指定长度的字符串,中文算作两个字符
'函数参数:n,longstr
'参数作用:n:要截取的长度;longstr:要截取的字符串
'输出:截取后的字符串
Function CutLongStr(strInput,lLength)
Dim str1
Dim i,j,k
j = Len(strInput)
k = 0
For i = 1 To j
str1 = Mid(strInput,i,1)
If Asc(str1) > 0 Then
k = k + 1
Else
k = k + 2
End If
If k > lLength Then
CutLongStr = Left(strInput,i) & "..."
Exit For
Else
CutLongStr = strInput
End If
Next
End Function
如何设计一个合理的编码规范,不是本书所要详细讨论的问题,也并没有一个一定要遵守的原则,本节简单介绍作者的编码规范,希望可以起到一个抛砖引玉的作用,从而引导读者总结自己的编程经验,最终可以设计出符合自己实际的编程规范。如果你对此感兴趣,那么我建议你阅读著名的《代码大全》一书,在这本书中对于这类问题有着详尽的探讨。
如对本文有疑问,请提交到交流论坛,广大热心网友会为你解答!! 点击进入论坛