仓酷云

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

[学习教程] ASP教程之收集法式设计中的模块化思惟

[复制链接]
飘飘悠悠 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:43:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

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做网站,开发效率高,使用人数少,减少不必要的开销。交互性是互动方式,是有开发人员决定的。
兰色精灵 该用户已被删除
沙发
发表于 2015-2-4 06:08:39 | 只看该作者
虽然ASP也有很多网络教程。但是这些都不系统。都是半路出家,只是从一个例子告诉你怎么用。不会深入讨论,更不会将没有出现在例子里的方法都一一列举出来。
乐观 该用户已被删除
板凳
发表于 2015-2-5 14:06:02 | 只看该作者
你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。
深爱那片海 该用户已被删除
地板
发表于 2015-2-12 01:50:28 | 只看该作者
它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。
若天明 该用户已被删除
5#
发表于 2015-2-27 14:44:00 | 只看该作者
学习ASP其实应该上升到如何学习程序设计这种境界,其实学习程序设计又是接受一种编程思想。比如ASP如何学习,你也许在以前的学习中碰到过。以下我仔细给你说几点:
灵魂腐蚀 该用户已被删除
6#
发表于 2015-3-1 09:13:51 | 只看该作者
弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。
分手快乐 该用户已被删除
7#
发表于 2015-3-10 13:02:47 | 只看该作者
我就感觉到ASP和一些常用的数据库编程以及软件工程方面的思想是非常重要的。我现在也在尝试自己做网页,这其中就用到了ASP,我想它的作用是可想而知的。
冷月葬花魂 该用户已被删除
8#
发表于 2015-3-17 07:33:11 | 只看该作者
先学习用frontpage熟悉html编辑然后学习asp和vbscript建议买书进行系统学习
活着的死人 该用户已被删除
9#
发表于 2015-3-24 01:49:10 | 只看该作者
先学习用frontpage熟悉html编辑然后学习asp和vbscript建议买书进行系统学习
小妖女 该用户已被删除
10#
发表于 2015-3-27 11:56:26 | 只看该作者
ASP也是这几种脚本语言中最简单易学的开发语言。但ASP也是这几种语言中唯一的一个不能很好支持跨平台的语言。  因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。
谁可相欹 该用户已被删除
11#
发表于 2015-4-2 08:36:20 | 只看该作者
兴趣爱好,那么你无须学编程,申请一个域名和空间,在网上下载一些免费开源的CMS系统,你不用改代码,只须熟悉它们的后台操作,像office一样简单方便,很快就能建一个站点,很多站长都是这样做的
再见西城 该用户已被删除
12#
发表于 2015-4-6 21:11:20 | 只看该作者
Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点)
海妖 该用户已被删除
13#
发表于 2015-4-11 05:15:59 | 只看该作者
我认为比较好的方法是找一些比较经典的例子,每个例子比较集中一种编程思想而设计的。
再现理想 该用户已被删除
14#
发表于 2015-4-21 18:14:40 | 只看该作者
你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。
第二个灵魂 该用户已被删除
15#
发表于 2015-4-26 20:25:59 | 只看该作者
ASP的语言不仅仅只是命令格式差不多,而是包含在<%%>之内的命令完全就是VB语法。虽然ASP也是做为单独的一个技术来提出的,但他就是完全继承了VB所有的功能。
admin 该用户已被删除
16#
发表于 2015-6-5 22:09:28 | 只看该作者
交流是必要的,不管是生活还是学习我们都要试着去交流,通过交流我们可以学到很多我们自己本身所没有的知识,可以分享别人的经验甚至经历。
17#
发表于 2015-7-8 17:44:02 | 只看该作者
ASP也是这几种脚本语言中最简单易学的开发语言。但ASP也是这几种语言中唯一的一个不能很好支持跨平台的语言。  因为ASP脚本语言非常简单,因此其代码也简单易懂,结合HTML代码,可快速地完成网站的应用程序。
透明 该用户已被删除
18#
发表于 2015-7-10 13:05:03 | 只看该作者
你可以通过继承已有的对象最大限度保护你以前的投资。并且C#和C++、Java一样提供了完善的调试/纠错体系。
山那边是海 该用户已被删除
19#
发表于 2015-7-12 09:55:31 | 只看该作者
下面简单介绍一下我学习ASP的方法,希望对想学习ASP的朋友有所帮助...
若相依 该用户已被删除
20#
发表于 2015-7-13 21:36:29 | 只看该作者
我们必须明确一个大方向,不要只是停留在因为学而去学,我们应有方向应有目标.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-5-3 18:47

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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