我心依人http://blog.yesky.com/Blog/symboltome/复制地址

撑都我的博客看啥子,还是去看看图吧、网摘、论坛赛~~

公告栏
控制面板
日历
<2007年11月>
SuMoTuWeThFrSa
28293031123
45678910
11121314151617
18192021222324
2526272829301
2345678
留言簿(4)
文章档案
网络生活
我的博客圈

第一章 ASP编码规范通述

ASP编码分为两大部分,一部分为静态文件编码,一部分为包含服务器端脚本的动态文件编码。

静态文件编码分script编码和HTML编码两部分。

服务器端编码则分为服务器脚本、客户端脚本、HTML脚本三部分。

编码规范采用如下约定:

所有客户端脚本一律使用Javascript

所有服务器端脚本一律使用VBscript

静态页面输出一律使用HTML脚本

本规范不适用于由服务器端脚本所产生的客户端脚本代码。

 

第二章 静态文件编码规范

静态文件脚本部分采用Javascript编写。输出部分采用HTML标记语言。

1. HTML标记语言编码规范

1.1 标记的换行规范:

* 一个标记必须占用一行。不得出现两个标记在同一行的情况(同一标记的关闭标记除外),如:

<tr><td>text</td></tr>

而必须写成:

<tr>

       <td>text</td>

<tr>

1.2 标记的关闭规范

* 静态文件内容必须包含在<body></body>标记中间

* <body>标记必须包含在<html></html>标记中间

* 对于需要关闭的标记,如:

<html><title><body><table><tr><td><p><textarea><select><font><option><div><span>

必须同其关闭标记同时出现。如

<body><p><font>.</font>.</p>..</body>

* 不得出现交叉包含的语句,如:

<p><font>..</p></font>

1.3 标记的属性赋值规范

对于接受属性的标记,属性值必须使用双引号或者单引号包围。如:

<body bgcolor=red>

<font size=7>

1.4 标记的缩进规范

* 最高一级的父标记采用左对齐顶格方式书写。

* 下一级标记采用左对齐向右缩进一个Tab的方式书写

在下一级依此类推,分别左对齐相对于父标记向右缩进一个Tab的方式书写

* 同一级标记的首字符上下必须对齐。

2. 客户端Javascript规范

2.1 变量命名规范

* 常量以及全局变量名必须全部使用大写字母

* 变量名首字母必须小写。

* 变量名必须使用其类型的所写字符串开始。各种类型的所写字符串如下:

* 整型变量:int

* 长整型变量:lng

* 浮点型变量:flt

* 双精度变量:dbl

* 对象引用变量:obj

* 字符串变量:str

* Date类型变量:dtm

* 变量名必须采用有意义的单词命名,如:

strUserNamelngArrayIndex

* 变量名除首字母小写外,其他单词首字符必须大写

* 如果变量名过长可以使用单词缩写,除了被广泛了解的单词缩写以外,所有使用单词所写的变量名必须在定义时给出注释,如:

var strAdName //用于表示Administrator帐户的名称

var strAdminName //不用给出注释,Admin被广泛了解

2.2 变量使用规范

* 变量使用前必须定义。没有定义的变量禁止使用

* 变量的使用尽量缩小到小的作用域。如循环使用

for(var I=0;I<12;I++){

 

}

而不是:

var I;

for(I=0;I<12,I++){

 

}

2.3 对象命名规范

各种页面对象如text输入框、按钮、下拉选择框在命名时必须使用以下对应前缀:

* text输入框:txt

* button按钮:btn

* select下拉选择框:sel

* option:opt

* form表单:frm

* frame框架:fra

* hidden表单项:hdn

* div标记:div

* span标记:span

* 对话框对象:dlg

* 窗口对象:win

2.4 函数以及子过程命名规范

* 函数命名必须使用动词+名词对的方式,并且能够体现函数的功能

* 函数命名的动词前缀必须是同函数功能相关的完整动词

* 函数命名第一个单词的首字母小写,后面每一个单词的首字母大写

 

第三章 动态文件编码规范

1. HTML书写规范

HTML书写规范必须符合静态文件HTML标记书写规范,参考(第二章第一节)

2. 客户端脚本规范

动态文件客户端脚本一律采用Javascript书写,并必须符合静态文件编码规范中有关Javascript编码规范的规定(参考第二章第二节)

3. 服务器端脚本书写规范

服务器端脚本书写采用VBscript书写

3.1 命名规范

3.1.1 VBscript脚本变量命名规范

* 常量以及全局变量必须全部使用大写字母

* 常量必须使用CONST_前缀

* 全局变量必须使用G_前缀

* 变量名首字母必须小写。

* 变量名必须使用其类型的所写字符串开始。各种类型的所写字符串如下:

* 整型变量:int

* 长整型变量:lng

* 浮点型变量:flt

* 双精度变量:dbl

* 对象引用变量:obj

* 字符串变量:str

* Date类型变量:dtm

* 变量名必须采用有意义的单词命名,如:

strUserNamelngArrayIndex

* 变量名除首字母小写外,其他单词首字符必须大写

* 如果变量名过长可以使用单词缩写,除了被广泛了解的单词缩写以外,所有使用单词所写的变量名必须在定义时给出注释,如:

dim strAdName ‘用于表示Administrator帐户的名称

dim strAdminName ‘不用给出注释,Admin被广泛了解

 

3.1.2 对象命名规范

各种对象如ConnectionRecordsetCommand在命名时必须使用以下对应前缀:

* Connection对象:conn

* Recordset对象:rs

* Command对象:cmd

* Parameter对象:param

* Field对象:fld

* Error对象:err

3.1.3 函数以及子过程命名规范

* 函数命名必须使用动词+名词对的方式,并且能够体现函数的功能

* 函数命名的动词前缀必须是同函数功能相关的完整动词

* 函数命名第一个单词的首字母大写,后面每一个单词的首字母大写

3.1.4 常用变量命名规范:

说明:包含在[>中的部分为可省略部分

* Connection对象:conn[Name>Name为所连接数据库的服务器名字

* Recordset变量命名规范:rs[Name>Name为自定义的同rs存储内容有关的英文单词组合

* Command对象:cmd[Name>Name为自定义的同command目的有关的英文单词组合

* SQL语句字符串变量:strSql[CommandName>CommandName为自定义的同Sql语句功能相关的英文单词组合,如:

strSqlUpdateModify

strSqlInsertUser

3.2 代码书写规范

3.2.1 变量明确声明原则

* 所有ASP程序文件,必须在代码的第一行包含<%option explicit%>。转为变量明确声明模式

3.2.2 字符集设定原则

* 所有将对客户端产生中文输出的ASP程序文件,必须在输出前设定Charset为”GB2312.如:Response.Charset = GB2312

3.2.3 函数使用原则

* 尽量使用函数封装代码块

* 连续代码块尽量不要超过50行。最多不得超过70

* 尽量使用局部变量。

* 如有涉及到全局的资源,如Connection,尽量作为函数的参数传入

* 所有在函数内部创建打开的资源,在退出函数前必须关闭释放。如:RecordsetCommand

3.2.4 RequestSessionApplication使用规范

* 所有需要放入SessionApplication中的对象,必须采用有意义的英文名字。除了被广泛了解的单词缩写以外,不得采用单词缩写。如:

Session(cp) = strCurrentUserIP ‘不允许

Session(CurrentUserIP) = strCurrentUserIP

Session(Pwd) = strPwd ‘允许,Pwd被广泛了解为密码

* 所有需要在代码内用到的RequestSessionApplication中的元素,必须在代码头部赋值给代码内声明的变量。

* 如果获得Form中提交的内容,必须使用Request.Form(itemName).

* 如果获得QueryString中提交的内容,必须使用Request.QueryString(itemName)

* 不得在代码中出现Request(“”)这样的引用方式

3.2.5 HTML同服务器端脚本混合使用原则

* 服务器端脚本标记“<%”必须同其上一行紧邻的标记左对齐,如:

<table>

<%

do while not rs.eof

%>

        <tr>

            <td>text</td>

        </tr>

<%

        rs.movenext

    loop

%>

</table>

* 服务器端脚本标记“<%”同其后的代码不得在同一行书写

* %>”同其前面的代码不得在同一行书写

* 服务器端脚本标记”%>”同其最近的”<%”标记对齐

* 服务器端内部的HTML代码依据静态文件的HTML缩进规则编写,不遵循服务器端脚本缩进规则

* HTML标记内部的代码,依据服务器端脚本的缩进规则,不遵循HTML代码缩进规则

 

    第四章 常见错误

1. ADO的事务处理

1.1 错误代码:80004005

1.1.1 错误描述:

Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005'

不能在 firehose 方式下启动事务

1.1.2 解决方法:

在开始ADO的事务的时候,必须首先关闭使用同一个连接对象打开的记录集,或者在打开那些游标集之前,设置游标集位置类型为adUseClient.(使用客户端游标集)

 

第五章 代码习惯书写示例

1. ADO对象的使用

1.1 ADODB.Connection对象

1.2 ADODB.Command对象

1.3 ADODB.Recordset对象

1.3.1 创建:

Set rs = Server.CreateObject(ADODB.Recordset)

rs.CursorLocation = adUseClient

rs.Open strSql,conn,1[,1> ‘必须指定游标类型

 

第六章 文件命名规范

1.数据库命名规范

数据文件命名采用系统名+_+文件类型,比如系统名为logistics,则数据库文件命名为logistics_database.mdf,有的数据库文件有多个,比如SQL Server就有2个,一个是数据库文件,另一个是日志文件,那么他们的文件命名分别为logistics_database.mdflogistics_log.log。文件名全部采用小写。

数据库表命名规范,表名长度不能超过30个字符,表名中含有单词全部采用单数形式,单词首写字母要大写,多个单词间不用任何连接符号。若库中有多个系统,表名采用系统名称+单词或多个单词,系统名是开发系统的缩写,系统名称全部采用小写英文字符,bbsTitle,bbsForumType。若库中只含有一个系统,那么表名仅用一个单词或多个单词。单词选择能够概括表内容的一个或多个英文单词,如UserInfo,UserType。关连表命名规则为Re_A_B,ReRelative的缩写,如:Re_User_ArticleType, Re_User_FormType

数据库字段命名规范,数据库字段名全部采用小写英文单词,单词之间用”_”隔开,命名规则是表别名+单词,如:user_name,user_pwd。表别名规则,如果表名是一个单词,别名就取单词的前4 个字母;如果表名是两个单词,就各取两个单词的前两个字母组成4 个字母长的别名;如果表的名字由3 个单词组成,你不妨从头两个单词中各取一个然后从最后一个单词中再取出两个字母,结果还是组成4 字母长的别名。

视图名采用规则View_A_B_C,View表示视图。这个视图由几个表产生就用”_”连接几个表的名,如果表过多可以将表名适当简化,但一定要列出所有表名。

存储过程命名规则P_表名_存取过程名(缩写),比如P_User_DelP_ArticleType_AddData

SQL语句编写规则,关键字必须大写,其他书写按上述命名规则,比如:

 SELECT user_id, user_name FROM User WHERE user_id = ‘tom’

 

2.文件夹及文件命名规范

文件夹命名一般采用英文,长度一般不超过20个字符,命名采用小写字母。除特殊情况才使用中文拼音,一些常见的文件夹命名如:images(存放图形文件)flash(存放Flash文件),style(存放CSS文件)scripts(存放Javascript脚本),inc(存放include文件)link(存放友情链接),media(存放多媒体文件)等。

文件名称统一用小写的英文字母、数字和下划线的组合。命名原则的指导思想一是使得你自己和工作组的每一个成员能够方便的理解每一个文件的意义,二是当我们在文件夹中使用按名称排例的命令时,同一种大类的文件能够排列在一起,以便我们查找、修改、替换、计算负载量等等操作。

1、图片的命名原则名称分为头尾两部分,用下划线隔开,头部分表示此图片的大类性质,例如广告、标志、菜单、按钮等等 。

放置在页面顶部的广告、装饰图案等长方形的图片取名: banner

标志性的图片取名为: logo

在页面上位置不固定并且带有链接的小图片我们取名为 button

在页面上某一个位置连续出现,性质相同的链接栏目的图片我们取名: menu

装饰用的照片我们取名: pic

不带链接表示标题的图片我们取名: title

下面是几个范例: banner_sohu.gif banner_sina.gif menu_aboutus.gif menu_job.gif title_news.gif logo_police.gif logo_national.gif pic_people.jpg

2、动态语言文件命名规则性质_描述,描述可以有多个单词,用”_”隔开。性质一般是该页面得概要,范例:register_form.aspregister_post.asp,topic_lock.asp


作者:数字化 阅读() 评论()  编辑 发表于:2005-07-19 16:41
相关内容
文章评论

暂无人对此文章发表评论!

发表评论
标题 *  
姓名 *  
内容 *  
   验证码: *       
       
版权声明:天极是本Blog托管服务提供商。如本文牵涉版权问题,天极不承担相关责任,请版权拥有者直接与文章作者联系解决。
Powered by:

Copyright © 我心依人