>+ ASP开发规范

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情
为了规范程序代码编写,提高代码可读性,降低后期维护成本,提高办公效率,建议以后编写的程序按以下几条规范进行:

一、 统一VBSCRIPT和ASP程序编写规范:

(一)变量命名规则:

由于在ASP和VBSCRIPT中因为不需要声明变量,同时不能声明变量的类型,但为了提高代码的可读性,养成好的开发习惯,对于本系统开发的变量命名统一规则如下:

1. 使用Dim、Public、Private声明变量;

例如:Dim iStudentNum

2. 变量类型的体现:

a、 整型变量:以小写字母i开头,后面跟变量标示符,英文单词的第一个字母大写。

例如:下面声明一个存储数据库记录多少的变量

Dim iResordsetNumber

b、 单精度实体变量:以小写字母f开头,后面跟变量标示符,英文单词的第一个字母大写。

c、 双精度实体变量:以小写字母d开头,后面跟变量标示符,英文单词的第一个字母要大写。

d、 字符型变量:以小写字母s开头;

e、 布尔型变量:以小写字母b开头;

f、 数组变量:数组类型+“_”+“Array”+“_”+“变量标示符”

例如:定义一个存储学生成绩的数组(存储单精度实体类型变量)

Dim f_Array_StudentMark

3. 变量标示符要符合标示符标准,同时容易理解,尽量使用英文单词来代替,尽量避免使用缩写或简写。

例如:存储校友通讯录的字符串变量定义为:

Dim sSchoolfellowAddressList;

虽然这样定义在输入的时候比较麻烦,但是,它大大提高了程序的可读性,见其变量命名就知其意。在做变量查找的时候也比较方便。 速度和性能总是不能两全,为了方便后者我们也就只有牺牲速度。

4.在变量定义后面加变量功能定义的注释。

(二)常量命名规则:

类型体现和上面一样,不一样的地方是,所有后面的标示符全部大写,例如:

定义一个存储语言种类的的字符型常量:

Const sLANGUAGE_TYPE=”Chinese”

(三)功能函数、过程命名规则:

1. 使用Function声明函数,用Sub声明过程;

2. 函数名或过程名的第一个字母大写,且后面的每个单词第一个字母大写。

例如:

Function CheckValidityOfInput(sStuentMark)

‘此处写代码

…………

End Function

3. 函数名或过程名要容易读,简单明了。

4. 在函数前面加注释,说明函数功能、参数说明、创建日期、修改日期、修改原因、创建人、修改人等相关信息。

(四)代码缩进标准:

为了提高代码的美观型和易读性,在此提出代码编写的版面格式:区间与区间之间以一个<Tab>为间距。

例如:

‘***********************************************************

‘功能:检测输入字符串中的单引号,如果有则把原来的一个单引号变成两

‘ 个单引号,两个变成四个,依次类推,从而避免SQL语句执行错误。

‘创建人:XXXX

‘创建时间:2002-7-6

‘修改时间:

‘修改原因:

‘修改人:

‘输入参数说明:sInputString:需要进行单引号检测的字符串

‘***********************************************************

Function CheckValidityOfInput(sInputString)

Dim iCirculationControl ‘控制循环

Dim sApartString ‘分离字符检测

Dim iLenOfInput ‘输入字符长度

iLen= Len(Trim(sInputString))

For iCirculationControl = 1 To iLen

If Mid(sInputString, iCirculationControl, 1) <>"'" Then

sApartString = sApartString & _

Mid(Trim(sInputString), iCirculationControl , 1)

Else

sApartString = sApartString & "''"

End If

Next

CheckValidityOfInput = sApartString

End Function

二、 统一JavaScript程序编写规范:

JavaScript的命名规则和上面大部分相同,唯一不同的地方是:变量使用Var来声明,在声明结束后以分号(;)结束。

函数的代码要求层次清楚,该写在下一行的地方尽量往下一行写,不要在一行中完成所有代码,这样看起来不容易,检查错误也特别费时。

在写函数的时候记着加注释内容,以便以后维护时快速了解程序功能。

下面是一个JavaScript程序:

<Script Language=”JavaScript”>

//***********************************************************************

//功能:对Form中的Text,Password,TextArea对象进行单引号处理,解决由于单引号

// 起的系统错误。

//创建人:XXXX

//创建时间:2002-7-8

//修改时间:

//修改原因:

//修改人:

//**********************************************************************

function CheckElement()

{

var sNeedCheck=""; //检测属于INPUT标签的内容

var iControlInput=0; //控制循环

var iLocationInput=0; //控制位置

var iLengthInput=0; //存储字符串长度

var sCheckingInput=""; //正在检测的字符

var sReplaceInput=""; //替换字符

var sHaveCheckInput=""; //已经检测的字符

var objInput; //存储INPUT对象;

var objTextArea; //存储TextArea对象

var iControlTextArea=0;

var iLocationTextArea=0;

var iLengthTextArea=0;

var sCheckingTextArea="";

var sReplaceTextArea="";

var sHaveCheckTextArea="";

//检测页面中的Text和Password对象中的单引号

for (i = 0; i < document.all.tags('INPUT').length; i++){

objInput = document.all.tags('INPUT')[i];

if(objInput.type=='text'|| objInput.type=='password'){

sNeedCheckInput=obj.value;

iLengthInput=sNeedCheckInput.length;

for(iControl=0;iControl<iLength;iControl++){

sCheckingInput=sNeedCheckInput.charAt(iControl);

if(sCheckingInput==”’”)

sReplaceInput=”’’”;

else

sReplaceInput=sCheckingInput;

sHaveCheckInput=sHaveCheckInput+sReplaceInput;

}

}

objInput.value=sHaveCheckInput;

}

//检测页面中的TextArea对象中的单引号

for (i = 0; i < document.all.tags('TEXTAREA').length; i++){

objTextArea = document.all.tags('TEXTAREA')[i];

if(objTextArea.type=='text'|| objTextArea.type=='password'){

sNeedCheckTextArea=obj.value;

iLengthTextArea=sNeedCheckTextArea.length;

for(iControl=0;iControl<iLength;iControl++){

sCheckingTextArea=sNeedCheckTextArea.charAt(iControl);

if(sCheckingTextArea==”’”)

sReplaceTextArea=”’’”;

else

sReplaceTextArea=sCheckingTextArea;

sHaveCheckTextArea=sHaveCheckTextArea+

sReplaceTextArea;

}

}

objTextArea.value=sHaveCheckTextArea;

}

}

</Script>

三、 系统性能提高,代码规范:

1.在ASP页面内,凡是使用CreageObject()创建的对象(Com、Recordset等),对于这些变量,应当在该页结束进行对象释放:即

Set 对象变量名=Nothing

2.数据库打开以后在不用的时候(通常是本页最后面),需要对连接进行关闭;

3.对于SQL语句,存储过程,尽量避免使用*来取所有字段,为了代码的易读性,SQL关键字要求全部大写,字段部分小写。

例如:

SELECT name,age,birthday,telephone,address FROM SchoolFellow.Address WHERE name=’xxxx’ ORDER BY birthday DESC

4.在ASP页中所有属性值尽量使用双引号括起来,特别是有属性Value的值,不要因为省时间而把双引号去掉(有的地方虽然可以去掉,程序不会出现错误,但,在有的地方去掉双引号会引来更多的麻烦。)

例如:

<INPUT type=”text” id=”ClassID” name=”ClassID” value=”<%=sClassID%>”>

在这个例子中,如果把Value属性值的单引号去掉,如果数据库中出来的值有空格,空格后面还有值,结果,显示的内容只有空格前面的内容,而后面的内容就会丢失。这只是其中一种情况,其他还有很多未知情况发生。

5. 配对标签问题:对于象<a></a>之类的标签,要注意检查配对的位值,有没有结束标志。

6. 对于需要输入字符串,且需要使用SQL语句的地方,需要进行单引号处理,调用/include/CheckQ.asp中的两个方法(一个是客户端处理,一个是服务器端处理,根据需要进行调用,安全性要求高的地方多数情况下采用服务器端处理。)之一。

7. 为了提高安全性,能使用ASP编写的代码,尽量采用ASP编写,在服务器端运行,不让用户看到代码。

8. 对于安全性要求特别高的地方,建议采用三层结构:使用VB或Delphi编写商业逻辑层代码(COM),尽量把数据库的连接部分封装到组件中,提高安全性能,通过组件和数据库交流。

9. 对于网站的安全性,应该采用好的断口扫描软件,查看网站已经打开的断口,把不安全的断口给关闭。

四、 养成写开发文档的习惯:

对于每一个页面设计(前接页,后接页),包括功能说明,页面设计,页面名称,存放位置等,应当有相应的文档记载。对于发生改动的地方,需要保留原来的部分(注释或备份),并说明备份文件存放的地方,改动时间,修改人。

对于程序部分,应该有相应的设计流程,改动的时候,也需要设计改动流程图,以便以后进行对比,和查找问题所在位置,以及问题的严重性分析。
Asp.net编程规范 Asp.net编程规范,由本公司开发部门制定的比较完善的编程规范,包括,命名规则,数据库操作方法书写规则,书写规范 等 立即下载

相关推荐

Web Services及ASP.NET应用程序的安全策略和方法

WebServices的出现及ASP.NET应用程序的普及已经完全改变了管理信息系统领域的格局,但在WebServices技术领域仍然存在着一些缺陷,特别是安全性问题,本文将针对这一问题介绍其应对的策略和方法

ASP设计常见问题及解答精要

作为微软推出的网页与数据库解决方案,ASP由于有微软得天独厚的操作系统等技术后盾支持,因此得到了迅速的发展,并且正受到越来越多的欢迎,在目前在电子商务网站的建设中有很多都使用ASP来编写程序。   近来有很多的读者向我们咨询学习ASP的方法和在学习中遇到的一些问题,其中有一些是初学者经常遇到和面临的问题。为了让读者在学习ASP的过程中加深对ASP的了解,并能够有效地解决遇到的问题,我们特别收集了比

saihoo(天涯)的专栏 1084

C#-ASP.NET编码规范

在我们进行项目开发过程,必须注意的编码规范准则。

一份代码编写标准

一份代码编写标准[ 作者:9pvision    文章来源:---    点击数:22    责任编辑:admin ] 【双击滚屏】一、通用源代码格式规则 1.1 开发工具 推荐使用Microsoft ? 公司的Visual InterDev 来书写ASP 代码,使用Macromedia ? 公司的Dreamweave

Pinocchio 的专栏 1030

ASP入门(十六)-ASP开发的规范

毋容置疑,在开发中遵守一套规范,将会有利于提高代码的可读性,较低后期维护成本。 文件存放目录规范 js 目录下存放着页面所使用的 JavaScript 脚本文件,因为我们可能用到第三方提供的免费的 JavaScript 框架库(Prototype.js、JQuery)等,因此特别建立 lib 文件夹,用来存放这些脚本文件。 include 目录下存放我们常用的函数,lib 目录下则存...

weixin_33795833的博客 151

<转>下一代Asp.net开发规范OWIN(1)—— OWIN产生的背景以及简单介绍

2014-09-04 07:22 by JustRun http://www.cnblogs.com/JustRun1983/p/3955238.html 随着VS2013的发布,微软在Asp.Net中引入了很多新的特性,比如使用新的权限验证模块Identity,使用Async来提高Web服务器的吞吐量和效率等。其中一个不得不提的是OWIN和Katana.OWIN的全称是Op...

aibixin8234的博客 162

asp开发规范

asp开发规范 ——写这个东西请多多指教,以后开发时好少吃点苦头。一、单页编写规范: 切记页面要分模块来写: 第一模块:接收参数。[有可能从不同页面提交到同一个页面;也可能出现两个表单项以哪个优先的处理。 第二模块:定义全局变量。 第三模块:写处理代码(尽量将代码都包含到函数中,详见页面附注一。)。——到此asp代码主要部分完成。 第四模块:纯html代码,利用储存在全局变量中的值来生成页面。 第

谁谁的程序技术专栏 1171

ASP代码开发规范

为了规范程序代码编写,提高代码可读性,降低后期维护成本,提高办公效率,建议以后编写的程序按以下几条规范进行: 一、 统一VBSCRIPTASP程序编写规范: (一)变量命名规则: 由于在ASPVBSCRIPT中因为不需要声明变量,同时不能声明变量的类型,但为了提高代码的可读性,养成好的开发习惯,对于本系统开发的变量命名统一规则如下: 1. 使用Dim、Public、Private声明变量; 例

1802

ASP开发规范

为了规范程序代码编写,提高代码可读性,降低后期维护成本,提高办公效率,建议以后编写的程序按以下几条规范进行:一、       统一VBSCRIPTASP程序编写规范:(一)变量命名规则:由于在ASPVBSCRIPT中因为不需要声明变量,同时不能声明变量的类型,但为了提高代码的可读性,养成好的开发习惯,对于本系统开发的变量命名统一规则如下:1.    使用Dim、Public、P

欢迎您步入怪豆世界--(UglyBean) 天行键,君子以自强不息;地势坤,君子以厚德载物! 1071

ASP.NET网站开发规范

ASP.NET网站开发规范 目 录 1 .概述.... 2 1.1 背景... 2 1.2 目的... 2 2 .软件开发规范.... 3 2.1 开发环境... 3 2.2 代码组织... 3 2.2.1 文件创...

weixin_30399055的博客 174

我的笔记 :ASP开发规范

<br />我的笔记 :ASP开发规范 <br />为了规范编码程序,提高代码的可读性,降低日常维护成本,提高办公效率,为以下几个规格后编制建议的程序: <br />第一,团结VBScriptASP编程规范: <br />(一)变量的命名规则: <br />至于在ASPVBScript不要在同一时间不能声明变量类型变量,但为了提高代码的可读性,养成良好的发展实践,这为统一命名规则变量如下制度的发展: <br />1。使用Dim,公共,私人声明变量;<br />例如:昏暗iStudentNum <br /

qa1557294989的专栏 289

我整理的一些 ASP.NET 开发规范

除了 C# 编码规范是每个开发人员必须掌握的以外,以下是我自己整理的一些规范,强迫自己一定要在开发中这样做,而不强迫别人,仅供参考。 1. ASP.NET 或 ASP.NET MVC 项目中的文件命名是否应该小写,并且尽量简单。比如:read.aspx 、post.aspx、 productController、 add(Action)。如果是 MVC 项目, Action 的命名可以用下划线...

weixin_30633405的博客 220

ASP.NET开发规范

ASP.NET开发规范 #favor_form{width:200px;} #favor_form p {color:#666;} #favor_form form{height:60px;width:200px;} #favor_form form ._favor_input{display:block;margin:2px 0;width:199px;} #favor_fo...

weixin_34343000的博客 127
上一篇: >+ asp当中判断函数一览
下一篇: >+ URL编码与SQL注射
xilo
博客等级 码龄22年 2粉丝 39原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值