ASP编码规范
ASP编码规范(--::) 第一章 ASP编码规范通述
ASP编码分为两大部分,一部分为静态文件编码,一部分为包含服务器端脚本的动态文件编码。
静态文件编码分script编码和HTML编码两部分。
服务器端编码则分为服务器脚本、客户端脚本、HTML脚本三部分。
编码规范采用如下约定:
所有客户端脚本一律使用javascript
所有服务器端脚本一律使用VBscript
静态页面输出一律使用HTML脚本
本规范不适用于由服务器端脚本所产生的客户端脚本代码。
第二章 静态文件编码规范:
静态文件脚本部分采用javascript编写。输出部分采用HTML标记语言。
. 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 标记的属性赋值规范
对于接受属性的标记,属性值必须使用双引号或者单引号包围。如:
<bodybgcolor=”red”>
<font size=’’> 1.4 标记的缩进规范
* 最高一级的父标记采用左对齐顶格方式书写。
* 下一级标记采用左对齐向右缩进一个Tab的方式书写
在下一级依此类推,分别左对齐相对于父标记向右缩进一个Tab的方式书写
* 同一级标记的首字符上下必须对齐。
. 客户端javascript规范
2.1 变量命名规范
* 常量以及全局变量名必须全部使用大写字母
* 变量名首字母必须小写。
* 变量名必须使用其类型的所写字符串开始。各种类型的所写字符串如下:
* 整型变量:int
* 长整型变量:lng
* 浮点型变量:flt
* 双精度变量:dbl
* 对象引用变量:obj
* 字符串变量:str
* Date类型变量:dtm
* 变量名必须采用有意义的单词命名,如:
strUserName、lngArrayIndex
* 变量名除首字母小写外,其他单词首字符必须大写
* 如果变量名过长可以使用单词缩写,除了被广泛了解的单词缩写以外,所有使用单词所写的变量名必须在定义时给出注释,如:
var strAdName //用于表示Administrator帐户的名称
var strAdminName //不用给出注释,Admin被广泛了解 2.2 变量使用规范
* 变量使用前必须定义。没有定义的变量禁止使用
* 变量的使用尽量缩小到小的作用域。如循环使用
for(var I=;I<;I++){ }
而不是:
var I;
for(I=;I<,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 函数以及子过程命名规范
* 函数命名必须使用动词+名词对的方式,并且能够体现函数的功能
* 函数命名的动词前缀必须是同函数功能相关的完整动词
* 函数命名第一个单词的首字母小写,后面每一个单词的首字母大写
第三章 动态文件编码规范
. HTML书写规范
HTML书写规范必须符合静态文件HTML标记书写规范,参考(第二章第一节)
. 客户端脚本规范
动态文件客户端脚本一律采用javascript书写,并必须符合静态文件编码规范中有关javascript编码规范的规定(参考第二章第二节)
. 服务器端脚本书写规范
服务器端脚本书写采用VBscript书写
3.1 命名规范
3.1. VBscript脚本变量命名规范
* 常量以及全局变量必须全部使用大写字母
* 常量必须使用CONST_前缀
* 全局变量必须使用G_前缀
* 变量名首字母必须小写。
* 变量名必须使用其类型的所写字符串开始。各种类型的所写字符串如下:
* 整型变量:int
* 长整型变量:lng
* 浮点型变量:flt
* 双精度变量:dbl
* 对象引用变量:obj
* 字符串变量:str
* Date类型变量:dtm
* 变量名必须采用有意义的单词命名,如:
strUserName、lngArrayIndex
* 变量名除首字母小写外,其他单词首字符必须大写
* 如果变量名过长可以使用单词缩写,除了被广泛了解的单词缩写以外,所有使用单词所写的变量名必须在定义时给出注释,如:
dim strAdName ‘用于表示Administrator帐户的名称
dim strAdminName ‘不用给出注释,Admin被广泛了解
3.1. 对象命名规范
各种对象如Connection、Recordset、Command在命名时必须使用以下对应前缀:
* Connection对象:conn
* Recordset对象:rs
* Command对象:cmd
* Parameter对象:param
* Field对象:fld
* Error对象:err
3.1. 函数以及子过程命名规范
* 函数命名必须使用动词+名词对的方式,并且能够体现函数的功能
* 函数命名的动词前缀必须是同函数功能相关的完整动词
* 函数命名第一个单词的首字母大写,后面每一个单词的首字母大写
3.1. 常用变量命名规范:
说明:包含在[>中的部分为可省略部分
* 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. 变量明确声明原则
* 所有ASP程序文件,必须在代码的第一行包含<%optionexplicit%>。转为变量明确声明模式
3.2. 字符集设定原则
*所有将对客户端产生中文输出的ASP程序文件,必须在输出前设定Charset为”GB2312”.如:Response.Charset =“GB2312”
3.2. 函数使用原则
* 尽量使用函数封装代码块
* 连续代码块尽量不要超过50行。最多不得超过70行
* 尽量使用局部变量。
* 如有涉及到全局的资源,如Connection,尽量作为函数的参数传入
* 所有在函数内部创建打开的资源,在退出函数前必须关闭释放。如:Recordset,Command
3.2. Request、Session、Application使用规范
*所有需要放入Session、Application中的对象,必须采用有意义的英文名字。除了被广泛了解的单词缩写以外,不得采用单词缩写。如:
Session(“cp”) = strCurrentUserIP ‘不允许
Session(“CurrentUserIP”) = strCurrentUserIP
Session(“Pwd”) = strPwd ‘允许,Pwd被广泛了解为密码 *所有需要在代码内用到的Request、Session、Application中的元素,必须在代码头部赋值给代码内声明的变量。
* 如果获得Form中提交的内容,必须使用Request.Form(“itemName”).
* 如果获得QueryString中提交的内容,必须使用Request.QueryString(“itemName”)
* 不得在代码中出现Request(“”)这样的引用方式
3.2. HTML同服务器端脚本混合使用原则
* 服务器端脚本标记“<%”必须同其上一行紧邻的标记左对齐,如:
<table>
<%
do while not rs.eof
%>
<tr>
<td>text</td>
</tr>
<%
rs.movenext
loop
%>
</table> * 服务器端脚本标记“<%”同其后的代码不得在同一行书写
* “%>”同其前面的代码不得在同一行书写
* 服务器端脚本标记”%>”同其最近的”<%”标记对齐
* 服务器端内部的HTML代码依据静态文件的HTML缩进规则编写,不遵循服务器端脚本缩进规则
* HTML标记内部的代码,依据服务器端脚本的缩进规则,不遵循HTML代码缩进规则第四章 常见错误
. ADO的事务处理
1.1 错误代码:。
1.1. 错误描述:
Microsoft OLE DB Provider for ODBC Drivers 错误''''''''''''''''
不能在 firehose 方式下启动事务
1.1. 解决方法:
在开始ADO的事务的时候,必须首先关闭使用同一个连接对象打开的记录集,或者在打开那些游标集之前,设置游标集位置类型为adUseClient.(使用客户端游标集)
第五章 代码习惯书写示例
. ADO对象的使用
1.1 ADODB.Connection对象
1.2 ADODB.Command对象
1.3 ADODB.Recordset对象
1.3. 创建:
Set rs =Server.CreateObject(“ADODB.Recordset”)
rs.CursorLocation = adUseClient
rs.Open strSql,conn,[,> ‘必须指定游标类型
http://blog.sina.com.cn/s/blog_4aeb4535010005kr.html
ASP编码规范的更多相关文章
- HTML编码规范 - (WEB前端命名规范)
HTML编码规范 (一)命名规则: 头:header 内容:content/container 尾:footer 导航:nav 侧栏:sidebar 栏目:column 页面外围控制整体布局宽度:wr ...
- PHP标记风格,编码规范
PHP标记风格PHP一共支持4种标记风格 <?php echo "这是XML风格的标记"; ?> 脚本风格 <script language="php& ...
- Android的编码规范
一.Android编码规范 1.学会使用string.xml文件 在我看来,当一个文本信息出现的次数大于一次的时候就必须要使用string.xml 比如一个保存按钮 , 不规范写法: <Butt ...
- PHP 高级编程(1/5) - 编码规范及文档编写
PHP 高级程序设计学习笔记20140612 软件开发中的一个重要环节就是文档编写.他可以帮助未来的程序维护人员和使用者理解你在开发时的思路.也便于日后重新查看代码时不至于无从下手.文档还有一个重要的 ...
- 【原】JAVA SE编码规范
/* * 编码规范: * 1.所有的命名遵循"见名知意"的原则 * 2.所有的命名不允许使用汉字或拼音 * 3.Java的工程命名建议使用小写,比如:oa.crm.cms... * ...
- 浅谈Android编码规范及命名规范
前言: 目前工作负责两个医疗APP项目的开发,同时使用LeanCloud进行云端配合开发,完全单挑. 现大框架已经完成,正在进行细节模块上的开发 抽空总结一下Android项目的开发规范:1.编码规范 ...
- PHP编码规范PSR-2
.note-content { font-family: "Helvetica Neue", Arial, "Hiragino Sans GB", STHeit ...
- Objective-C开发编码规范【转载】
概要 Objective-C是一门面向对象的动态编程语言,主要用于编写iOS和Mac应用程序.关于Objective-C的编码规范,苹果和谷歌都已经有很好的总结: Apple Coding Guide ...
- 前端编码规范之CSS
"字是门面书是屋",我们不会去手写代码,但是敲出来的代码要好看.有条理,这还必须得有一点约束~ 团队开发中,每个人的编码风格都不尽相同,有时候可能存在很大的差异,为了便于压缩组件对 ...
随机推荐
- 【jQuery】praseFloat()方法的用法及注意事项
[jQuery]praseFloat()方法的用法及注意事项 praseFloat(): 用于解析一个字符串,并返回一个浮点数 语法: praseFloat(strin ...
- k8s 基础 pod创建流程
Pod是Kubernetes中最基本的部署调度单元,可以包含container,逻辑上表示某种应用的一个实例.例如一个web站点应用由前端.后端及数据库构建而成,这三个组件将运行在各自的容器中,那么我 ...
- MySQL绿色版的安装步骤
由于工作需要最近要开始研究MySQL了(看来学习都是逼出来的),本人对mysql没有研究,可以说一个小白. 下面就从安装开始吧,虽然网上关于这方面的东西很多,还是需要自己把操作过程写下来. 1.数据库 ...
- springmvc chrome jsonviewer 一起请求 重复提提交 controller重复执行 2次执行
情况一: springmvc chrome jsonviewer 一起请求 重复提提交 controller重复执行 2次执行 Chrome浏览器地址栏访问接口url,重复请求问题解决 不论刷新还 ...
- Spring 3.x 企业引用开发实战(陈雄华/林开雄)
目录 ... 第一章:Spring概述 IoC:BeanFactory.Context.El(SpringEL表达式) AOP:允许JVM虚拟机启动时使用代理类在运行时期修改指定类的字节码,改变一个类 ...
- require用法及源码解析
一.require()的基本用法 require语句内部逻辑: 当 Node 遇到 require(X) 时,按下面的顺序处理. (1)如果 X 是内置模块(比如 require('http')) ...
- [poj1273]Drainage Ditches(最大流)
解题关键:最大流裸题 #include<cstdio> #include<cstring> #include<algorithm> #include<cstd ...
- eclipse中使用Maven插件报错:-Dmaven.multiModuleProjectDirectory system property is not set. Check $M2_HOME environment variable and mvn script match.
步骤: 1.添加M2_HOME的环境变量 2.Preference->Java->Installed JREs->Edit 选择一个jdk 3.添加 -Dmaven.multiMod ...
- mysql修改查询出来的时间格式
var d = new Date(rss.createtime); let youWant = d.getFullYear() + ) + '-' + d.getDate() + ' ' + d.ge ...
- Installshield build all installer in development computer
Step: Copy all "SetupPrerequisites" from build server. please make sure below items: Insta ...