|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
asp对于服务器的要求较高,一般的服务器如果访问量一大就垮了,不得不重启。法式|设计|收集 起首,以实践例子申明模块化关于法式编写的主要性.例子就是咱们如今采取的动网服装论坛
1 服装论坛的配色是一个服装论坛坚持活气的基本,一个好的配色意味着一个服装论坛胜利了一半.但我以为动网服装论坛的配色是及其华侈资本的,同时后台操作也异常费事.起首,它将CSS的各个界说局部存储到数据库,在翻开页面时再挪用,如
--------------------------
<%
'翻开数据库代码省略
dim bgcolor1
bgcolor1=rs("bgcolor1")
rs.close
set rs=nothing
%>
<table><tr><td bgcolor='<%=bgcolor1%>'></td></tr></table>
--------------------------
采取这类办法,在查询数据库内容较少时还说的曩昔,但一个页面的CSS界说多达几十项并且每页都要挪用时,这段代码就显得特别呆子了.尝尝以下这类办法:
--------------------------
<%
'1.CSS文件为页面STYLE文件,咱们将其文件途径贮存到数据库中
Dim style1=Rs("style")
%>
<html><head>
<link rel="stylesheet" type="text/css" href="<%=style1%>">
</head>
---------------------------
这类办法要比下面动网的办法快的多,并且大大削减了资本,这就是模块化的优点之一
能够有些伴侣还不分明甚么是模块化,我仍是老习气,用个实例向人人申明.该实例是写一个复杂的留言本,固然现实上,留言本这么小的一个法式通常为不需求模块化的,我只是申明一下.
咱们请求这个留言本必需注册了才干留言,只要办理员可以答复.依照普通的写法,咱们会写一个独自的上岸页面,然后当用户没注册进入留言页面时主动跳转到上岸页面,或用iframe包括该页面.固然,咱们还要写一个注册页面,一个答复页面
当利用模块化后,咱们仅仅只需求2个文件就可以弄定它,一个显示页面/gb.asp,一个模块页面/mod.asp
思绪是如许的:
1 将 显示留言 上岸 注册 写留言 等等功效分离模块话,如上岸功效
-----------
<%
'MOD.ASP中上岸模块
Sub gb_login()
%>
<form action='gb.asp?action=login' method=post>
<input type=text name='loginname' size=12>
<input type=password name='loginpass' size=12>
<input type=submit value='上岸'>
</form>
<%
End Sub
'处置上岸的模块
Sub gb_logincheck()
Dim a1,a2
a1=Request.form("loginname")
a2=request.form("loginpass")
'翻开数据库语句省略
if a2=rs("pass") then
session("name")=a1
end if
Response.Redirect "gb.asp"
End Sub
%>
然后咱们可以在留言主页面如许挪用
<%
Dim action
action=Request("action")
if action="login" then
gb_logincheck()
else
if session("name")="" then
gb_login()
end if
end if
%>
----------------------
固然下面的实例还很不完整,咱们依照这个思绪可以将一切功效界说成一个子进程一致放在一个文件里,需求用时在挪用
经由过程下面的实例,咱们应当懂得了甚么是模块化
模块是指法式中的一段代码,该段代码能完成法式中的某一功效并能自力或半自力运转.该语句段的非致命毛病其实不能招致全部法式瘫痪,只是使法式损失局部功效.
模块可以反复挪用,依据法式的特别性,模块中可以包括其他模块,联合其他模块运转
在大型法式编写中,模块话的应用是不成防止的.仍是以动网为例,人人可以看看动网的源码,它也大批应用了子进程,关于全部法式运转有很高文用.然而存在着良多毛病和缺点.
好比
1 动网服装论坛中从头至尾数据库的毗连都是翻开的,并且良多中央屡次翻开数据库,却找不到封闭数据库毗连的代码,这就是良多用东网的伴侣说服装论坛慢的缘由地点
剖析它的源码,咱们可以发明他将翻开数据库的代码放在一个文件里,然后将封闭数据库的代码放在一个函数里.我感觉很奇异,为何不把翻开数据库也作为一个子进程或函数挪用呢?
一个很好的办法用了一半就不必了其实惋惜!!阅读良多WEB法式的源码,也大多存在这类龙头蛇尾的景象.
2 良多模块存在着有数的毛病.最分明的就是在耳目数,呵呵,象咱们服装论坛常常呈现在线旅客几百人的情形.而现实上人人都晓得来咱们服装论坛的人相对不会不上岸的!这个毛病我不想讲太多,由于假如我写,我相对会换个办法写.
模块化的优异典型有良多,在服装论坛法式大将模块化应用的异常胜利确当推PHPBB,人人可以去他的官方网站看看[http://www.phpbb.com ]
固然,咱们没有需要将一个法式的一切代码都模块化,如许反而拔苗助长.甚么代码段应当模块化呢,我以为应当具有以下前提
1 大批在多个页面或法式中反复利用的代码段
2 有待进一步开辟的代码段
3 法式中的关头功效,中心内容
4 能扩大第三方插件的代码段
OK,讲到这应当告一段落了,最初总结以下模块化的界说和特色
在法式设计出格是WEB法式设计中,咱们采取模块化有以下优点:
1 大大削减代码行
2 使法式的布局明晰,在查找毛病时方针局限大大减小
3 当法式需求添加新的功效或修正某功效时,咱们要作的仅仅是写出一个新的模块或对某一模块停止修正,而无需对全部法式停止大手术.由于这个缘由,模块化也发明了优秀的接口情况,便于开辟第三方扩大功效
固然,模块化也存在着缺点:
1 在设计模块时必需思索模块间是不是有抵触,有时分会产生良多意想不到的毛病
2 模块中必需坚持清晰的布局,有些模块间的互动性招致在编写法式华夏本无序的代码必需排序
但,模块化的长处是不言而喻的,关于一个想用起码代码写出最壮大功效的WEB法式的法式员而言,他还有来由回绝它吗?
</p> 楼上说交互性不好,太牵强了吧。在微软提供的一套框架中,利用asp做网站,开发效率高,使用人数少,减少不必要的开销。交互性是互动方式,是有开发人员决定的。 |
|