教程学院
图像设计 多媒体类 机械制图 办公软件 操作系统 系统编程 网站编程 网页制作 数据库类 网络路由 网络工程 网络安全 考试认证
酷网学院
CAD
AutoCad Cam350 ProEngineer GCcam MATLAB Unigraphics SolidWorks CAXA Solid3000 Cimatron EdgeCAM
系统
安全 防火墙 病毒 WinXP Win2003 Vista
数据库
编程
网络
精彩图库
  当前位置: 库库中文网 · 网站编程教程 · ASP教程 · ASP基础教程

简单介绍Asp程序地设计和调整测试——给初学者

学院最新推荐文章
教程推荐
『简单介绍Asp程序地设计和调整测试——给初学者』如果文章有大量图片,显示会较慢,请等待图片下载完成
 
点击数: 更新时间:2005-11-19 
    很多朋友觉得ASP不是很好学,我觉得其实有了一定的编程基础,再加上那么一点点技巧,入门是不难的(不过要做好也不是很容易,要很多的相关知识——什么Sql Server数据库语言啦,数据结构啦(这些都是在优化ASP的算法时候要熟悉的)。

    在这只和大家谈谈我个人是怎书写和调试ASP的,希望能给大有一点帮助……
ASP脚本的书写:

一、注意区分清楚HTML语法和VBScript语法。因为ASP是混合使用HTML语法和VBScript语法的(当然,我全部写成VBScript语法也可以,不过那样的程序那难阅读)。最好使用一些能标示HTML标记和VBScript标记的编辑工具,比如Ultra Edit什么的。
    我学得编辑器的工具栏菜单不用太多,有一般的功能就行了,因为工具菜单一多,编辑区域肯定会变得较小,这是我们不希望看到的(你总不希望为了找出一个If的结束语句End if而翻来翻去吧。这也许是我以前使用记事业来编写ASP脚本的原因吧——呵呵,记事本的编辑区域较大嘛……

二、书写程序时使用缩进
    书写程序时使用缩进可以减少很多不必要的语法错误。以免执行你的ASP程序的时候提示“缺少end”什么什么的……
    通常指使用缩进书写指的是对流控制语句使用缩进,如果我不说,你也应该知道有哪些流控制语句吧:
    If……Else……End if
    For……Next
    Do While……Loop
    Select case ……Case……Case Else……End Select
    For each element In group……Next
    等等……
    比如写成下面这样查错就方便多了:
    If 条件 then
      语句
      do while 条件
        语句
      loop
    else
      语句
    end if

三、熟悉一些省略的写法,比如:
    If 条件 then
      语句
    End if
    可简写成If 条件 then 语句
    注意:后面不能再写else和end if。
    等等……

四、尽量熟悉你要使用的脚本语言。

五、备用一些常用的教程(比如VBScript语言参考什么的),以备查用。

六、拼写要十分小心


ASP脚本的调试:
一、在你编辑实现一定功能的ASP脚本时,首先得有一个清晰的思路,只要是:要实现什么功能,实现的关键是什么、语句流怎样控制等……虽然小的项目(比如一个简单的留言本系统)不一定要写出来,但起码要心中有数。

二、如果要使用数据库的话,得先根据你的项目功能设计数据库结构

三、不要等到整个ASP脚本全部编写完毕时才开始调试。一般都是一边编写一边调试(如果你看我做的话就是开两个窗口:一个编辑器,一个IE,在编辑中改一下脚本,再到IE窗口刷新一下)。
    如果你的脚本有几百行那么多,即使你只是将一段正确的脚本输入到文件里面,也难保不会出错。而这么长的脚本文件是很难调试的,一旦出现错误,你很难找出到底哪里出了问题——即使是语法错误。

四、调试语法错误的时候,经常采用“截短法”来做。
    比如出错提示为“第236行错误,缺少end”,这样长的代码,你很难知道到底缺少的是那个If的end或者是select的end……
    比如下面一段程序:

一大堆语句
if

else
  (这里有一大堆语句)
end if
    我通常的做法是截去括号中的部分,然后再试运行,再逐步将截去的部分放回去(这特别适用于调试别人编辑的脚本)。


五、标记调试方法
    有时为了知道程序执行到了哪个地方,通常在程序里加进一些标记,比如response.write "abc",然后将这句移动位置,这样就能确定程序到底有没有执行到我希望到的地方。
    在调试循环的时候,常常需要输出循环控制变量的值到浏览器以帮助调试。
    一些由于是变量值引起的错误,比如数据库连接或记录集打开错误,通常在出错语句的前面输出sql语句以确认sql语句没有错误。出于这个考虑,我通常使用sql="语句"/set  rs=execute(sql)来代替直接运行set rs=execute("语句"),因为当我的语句出错时,我可以很方便地在前面来个response.write sql来查看sql语句到底有没有问题。

六、在调试表单时,对于password表单项,通常先将它变成text,等调试好了后才改为password。

七、监视变量法
    在调试一些变量比较多的脚本时,比如聊天室调试时,由于大量使用到application和session变量,通常要做些辅助的脚本来查看application和session变量,这样就方便多了。

八、以少代多法
    调试global.asa文件的逻辑错误是比较麻烦的,特别是session.onend和application.onend事件。
    applicatoin.onstart事件调试不难——因为当你第一次打开浏览器的时候,如果global.asa文件有语法错误的时候,浏览器会提示你什么地方出错了。但很不幸地,session.onend就看不到提示了。为了确认你的session.onend到底有没有执行,通常在application.onstart设置一个标记变量,然后在session.ond事件中将
这个变量改成变一个值,这样就可以等session超时后查看该标记变量有没有被改变,如果没有改变就证明你的session.onend没有执行。
    对于application.onend的调试,你可以把那部分代码拿到一个ASP文件中,给它一定的条件(比如它使用了什么变量,然后满足它的条件看看有没有达到预的效果。不过通常application.onend都不会太复杂(复杂了调试通不过呗)。

九、尽量给一些数据库连接串全部的参数,以免引起不必要的麻烦。
    虽然一些参数不是必须的,但还是全部给它较好。我曾经试过由于没有给一个Access的数据库连接字符串足够的参数而引起离奇古怪的问题:修改了连接文件后,刷新一次可得到正确的结果,再来刷新一次就不行了,甚至出现了“无法指出的错误”。

十、不要急于进行错误处理On_orror。因为错误本身可以帮我们调试脚本,你一旦屏蔽了错误,很容易不知道到底哪里出错了。

十一、减少逻辑错误的一个最好的方法是有一个清晰的思路,别人是很难帮上你的。
    因此如果你在BBS上问一个逻辑错误,回答者首先的回答就是:“你的源代码呢?”,因此除非你是为了灌水,否则在BBS上问一个象这样“为什么我的记录集是空的”的问题是没有意义的。

此文只适合于一些初学者阅读。

请访问我的个人主页http://swuse.yeah.net,共同讨论ASP
】【关闭窗口
·上页:
·下页:
相关文章
     网站编程教程 - ASP基础教程
推荐教程ASP.NET初步掌握随想之吸星大法
推荐教程ASP.NET地工作机制(2)
推荐教程二级域名机制以及程序
推荐教程蛙蛙推荐:面向对象编制程序基本
推荐教程二级域名机制以及程序代码
推荐教程简单介绍Asp程序地设计和调整测
推荐教程ShotGraph普通地画图地机制
推荐教程二级域名机制以及程序,申请即
推荐教程运用VC++6.0绘制ASP服务器控件
推荐教程IIS5.0建网站—〉第一章 Win 2
推荐教程IIS5.0建网站—〉第一章 Win 2
推荐教程IIs5.0建网站--〉第三章  WWW服
精彩图片汇集
advertisement
关于站点 - 广告服务 - 联系我们 - 版权隐私 - 免责声明 - 合作伙伴 - 程序支持 - 网站地图 - 返回顶部
网站文本地图
版权所有:库库中文 2005-2007 欢迎各种媒体转载我们的原创作品[转载请注明出处]
copyright © 2005-2008 www.QQGB.com online services. all rights reserved. 蜀ICP备05015578
Template designed by Virus. Optimized for 1024x768 to Firefox,Opera and MS-IE6. Site powered by EQL.
红盾
热爱电脑,热爱生活
拥有电脑,拥有生命
让我们享受拥有电脑的时光