仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 440|回复: 8
打印 上一主题 下一主题

[学习教程] ASP教程之甚么才是进步ASP功能的最好挑选(续三)...

[复制链接]
透明 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:54:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
问题是他们究竟是喜欢他们是使用软件时,速度快还是速度慢好.(当然在3秒以内).无论是他们输入资料时,查找资料时,分析资料时.功能援用纪录会合域值的最无效办法是甚么?

  到今朝为止,我都是用名字援用纪录会合的域值的。这多是一种效力很低的办法,由于每次挪用都必要查找域。为了证实这一点,上面的测试就要经由过程纪录会合域的汇合的指针来援用域(ADO__08.asp):

 writedata
 DoWhileNotobjRS.EOF
  Response.Write(_
  "<TR>"&_
  "<TD>"&objRS(0)&"</TD>"&_
  "<TD>"&objRS(1)&"</TD>"&_
  "<TD>"&objRS(2)&"</TD>"&_
  "<TD>"&objRS(3)&"</TD>"&_
  "<TD>"&objRS(4)&"</TD>"&_
  "<TD>"&objRS(5)&"</TD>"&_
  "<TD>"&objRS(6)&"</TD>"&_
  "</TR>"_
  )
  objRS.MoveNext
 Loop

  正如我们所意料的,装载工夫的变更很小(差别多是因为代码上的稍微削减引发的)。可是这类手艺在无效显现工夫上却带来了分明的削减。

  鄙人面的例子中,我们将给每一个域指定一个独自的变量。这类办法制止了在表格轮回内的一切查找(ADO__09.asp):

 IfobjRS.EOFThen
  Response.Write("NoRecordsFound")
 Else
  writeheadings
  ...
  Dimfld0
  Dimfld1
  Dimfld2
  Dimfld3
  Dimfld4
  Dimfld5
  Dimfld6
  Setfld0=objRS(0)
  Setfld1=objRS(1)
  Setfld2=objRS(2)
  Setfld3=objRS(3)
  Setfld4=objRS(4)
  Setfld5=objRS(5)
  Setfld6=objRS(6)
  writedata
  DoWhileNotobjRS.EOF
  Response.Write(_
  "<TR>"&_
  "<TD>"&fld0&"</TD>"&_
  "<TD>"&fld1&"</TD>"&_
  "<TD>"&fld2&"</TD>"&_
  "<TD>"&fld3&"</TD>"&_
  "<TD>"&fld4&"</TD>"&_
  "<TD>"&fld5&"</TD>"&_
  "<TD>"&fld6&"</TD>"&_
  "</TR>"_
  )
  objRS.MoveNext
  Loop
  Setfld0=Nothing
  Setfld1=Nothing
  Setfld2=Nothing
  Setfld3=Nothing
  Setfld4=Nothing
  Setfld5=Nothing
  Setfld6=Nothing
  Response.Write("</TABLE>")
 EndIf

  到今朝,这类办法构成的了局是最好的。每笔记录的显现工夫下落成了.45毫秒。

  如今,一切测试剧本的设置都请求对了局纪录集有一些懂得。好比说,我们一向在栏题目中给域名编码,独自地援用这些域的值。上面的例子供应了一个静态的办理计划,在域的汇合中轮回,不但失掉数据,也失掉域的题目(ADO__10.asp):

 IfobjRS.EOFThen
  Response.Write("NoRecordsFound")
 Else
  writeheadings
  Response.Write("<TABLEBORDER=1><TR>")
  ForEachobjFldinobjRS.Fields
  Response.Write("<TH>"&objFld.name&"</TH>")
  Next
  Response.Write("</TR>")
  writedata
  DoWhileNotobjRS.EOF
  Response.Write("<TR>")
  ForEachobjFldinobjRS.Fields
  Response.Write("<TD>"&objFld.value&"</TD>")
  Next
  Response.Write("</TR>")
  objRS.MoveNext
  Loop
  Response.Write("</TABLE>")
 EndIf

 能够看到,我们在功能上有一个丧失,可是这个办法仍是比ADO__07.asp要快一些。

  上面的测试是在最初两个测试之间举行一些折衷。经由过程在一个静态分派数组中保留域的援用,既保持了静态的天真性,也挽回了一些功能上的丧失。

 IfobjRS.EOFThen
  Response.Write("NoRecordsFound")
 Else
  DimfldCount
  fldCount=objRS.Fields.Count
  Dimfld()
  ReDimfld(fldCount)
  Dimi
  Fori=0tofldCount-1
  Setfld(i)=objRS(i)
  Next
  writeheadings
  Response.Write("<TABLEBORDER=1><TR>")
  Fori=0tofldCount-1
  Response.Write("<TH>"&fld(i).name&"</TH>")
  Next
  Response.Write("</TR>")
  writedata
  DoWhileNotobjRS.EOF
  Response.Write("<TR>")
  Fori=0tofldCount-1
  Response.Write("<TD>"&fld(i)&"</TD>")
  Next
  Response.Write("</TR>")
  objRS.MoveNext
  Loop
  Fori=0tofldCount-1
  Setfld(i)=Nothing
  Next
  Response.Write("</T</p>SQLServer是基于服务器端的中型的数据库,可以适合大容量数据的应用,在功能上管理上也要比Access要强得多。在处理海量数据的效率,后台开发的灵活性,可扩展性等方面强大。
莫相离 该用户已被删除
沙发
发表于 2015-1-19 16:58:46 | 只看该作者
以上是语言本身的弱点,在功能方面ASP同样存在问题,第一是功能太弱,一些底层操作只能通过组件来完成,在这点上是远远比不上PHP/JSP,其次就是缺乏完善的纠错/调试功能,这点上ASP/PHP/JSP差不多。
板凳
发表于 2015-1-24 14:50:33 | 只看该作者
你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。
只想知道 该用户已被删除
地板
发表于 2015-2-1 17:03:07 | 只看该作者
ASP(ActiveServerPages)是Microsfot公司1996年11月推出的WEB应用程序开发技术,它既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码,能产生和执行动态、交互式、高效率的站占服务器的应用程序。
金色的骷髅 该用户已被删除
5#
发表于 2015-2-7 10:21:59 | 只看该作者
那么,ASP.Net有哪些改进呢?
若天明 该用户已被删除
6#
发表于 2015-2-21 18:30:07 | 只看该作者
运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。由脚本在服务器上而不是客户端运行,ASP所使用的脚本语言都在服务端上运行。
小魔女 该用户已被删除
7#
发表于 2015-3-6 20:56:48 | 只看该作者
封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高。
精灵巫婆 该用户已被删除
8#
发表于 2015-3-13 08:33:35 | 只看该作者
ASP.Net摆脱了以前ASP使用脚本语言来编程的缺点,理论上可以使用任何编程语言包括C++,VB,JS等等,当然,最合适的编程语言还是MS为.NetFrmaework专门推出的C(读csharp),它可以看作是VC和Java的混合体吧。
第二个灵魂 该用户已被删除
9#
发表于 2015-3-20 17:33:20 | 只看该作者
Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-25 02:13

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表