全面实现面向对象开发网站

2008-04-09 04:09:25来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

 全面实现面向对象开发网站传说中,MS Visual Studio6.0套件威力无比、魅力无穷。初见之时,不禁暗呼:“好大的块头,如何驾驭得了?”。是啊,由Visual C 6.0、Visual Basic6.0、Visual J 6.0、Visual FoxPro6.0、Visual InterDev6.0五大开发工具软件组成的Visual Studio6.0,安装光碟有七、八张之巨。望着它,就象一个学员第一次走进布满仪表的飞机驾仓:“该按哪一个钮好呢?”随着对它逐渐地熟悉和了解,才发现它高深莫测的外表下其实包藏着一颗平易近人的心----面向对象、可视化编程和基于组件的解决方案极大地方便了我们在Windows DNA架构上建立多层解决方案的所有应用,包括创建交叉平台的Web应用程序,以及基于应用程序的C/S(客户机/服务器)Windows操作系统。

  如果再细看这五大开发工具,你会发现很多熟悉的面孔:VC ,VB,VFP等。其实,开发基于组件的软件是现在软件开发的基础。微软把Windows应用程序的开发都基于它的组件对象模型(COM)上。COM/DCOM是一个独立于语言的对象模型,它能定义许多类型的服务,包括支持分布式对象和标准的服务接口。从这个意义上,我们可把这些开发工具分成两类:一类Visual C 6.0、Visual Basic6.0、Visual J 6.0和Visual FoxPro6.0是用以创建和使用COM组件的;而另一类Visual InterDev提供了一个集成化的开发环境,在网站开发中,专门负责“装配”各种组件成为解决方案的。所以,只要掌握了Visual InterDev6.0就掌握了Visual Studio6.0的精髓,如果能再精通一门VB、VC或J ,则在面向对象的网站开发中就能无往而不利了。

  虽然,最让Visual InterDev6.0得意的是它基于COM的集成化开发环境,但我觉得只有贯穿整个Visual Studio6.0的“面向对象”理念才是它真正的灵魂。特别是具有创新意义的网页对象概念提出了一种网页间共享数据的新方法,更让我们不得不佩服微软工程师们的智慧。

  传统的网页对象是建立在Document Object Model(文挡对象模型)基础之上的。一张网页(注意,是一张)中的每一个HTML标记都可看成是一个对象。每一个标记都有一个标识符、一些方法和属性。一张网页中最高级的节点是“document”对象(在DHTML中,还有“window”对象比它更高一级),它代表某整个网页页面。我们很早就在Javascript语言中运用,都很熟悉,在此就不再赘述。

  但我们发现,这种网页对象是专给客户端的浏览器设计的,它所有功能的实现只能在一张单独? 页内打转。当越来越多的应用在服务器端完成的时候,一种新的基于服务器端和客户端(以下都以基于服务器端平台为例来介绍)的网页对象思想被微软提了出来。其中一种就是Microsoft Scripting Component(脚本小程序)。大家可用“Scriptlet Wizard”创建(如果在DHTML中,则可创建一个JavaScript的“Public_description”对象或使用默认的界面说明来显露网页对象中的属性和方法)。这里因为篇幅关系,就不再详述了。

  另一种也是我想特别介绍的就是在Scripting Object Model(脚本对象模型)中的网页对象概念。它把网站内所有的ASP或HTML网页通过用户指定而看成一个一个的网页对象。如果用户在其网页中的服务器端脚本中组织了一些子程序和函数,那么用户就可以把这些子程序以及函数称为该网页对象的方法。这样,某网页不必传送隐含变量或者查询字符串至另外一个网页就可以十分便利地执行该页面中的特殊脚本了。

  网页对象简单的看就是对一个Designed-Time Controls(设计时控件):PageObject的运用。下面我想通过一个实例,分别用传统的方法和面向对象的方法实现,来对比说明网页对象概念的实际应用。我们准备实现这样一个功能:在一张网页Caller.asp中显示另一张网页Callme.asp中的数据。

  一、 传统方法:

  第一步:打开任何文本编辑器比如Windows的记事本,新建一文件Callme.asp。

  第二步:在此文件中输入如下VBScript脚本代码:

  $#@60;%Sub TestResponse.Write“嗨,我是一个测试过程”

  End Sub%$#@62;此Test过程在网页上显示“嗨,我是一个测试过程”第三步:再新建一文件Caller.asp。

  第四步:在此文件中输入如下VBScript脚本代码:

  $#@60;!--#include file="adovbs.inc" --$#@62;$#@60;!--#include file="Callme.asp" --$#@62;$#@60;% Test %$#@62;其中,adovbs.inc是一个头文件,定义了一些常量。$#@60;!--#include file="Callme.asp" --$#@62;语句让本网页可以调用Callme.asp中的过程和函数。Test语句调用了Callme.asp网页中已定义好的过程。凡是用C语言编过程的人都应该很熟悉这一方法。

  第五步:在浏览器中打开Caller.asp网页,你会看到此网页调用了Callme.asp网页中的过程Test,在Caller.asp网页上显示“嗨,我是一个测试过程。”二、 网页对象方法:

  如果我们把上述的两张网页都分别设成网页对象,那么,在Callme.asp网页中的Test函数就会成为Callme网页对象的一个方法。这样,我们就能在其它网页中很方便的调用这个网页对象中的属性(变量)和方法(函数)了。如下:

  第一步:在Visual InterDev的开发环境中创建一个新工程project1,然后在工程中创建一新ASP网页Callme.asp。

  第二步:在网页的空白处单击鼠标右键,选Script Block | Server,然后在$#@60;Script$#@62;和$#@60;/Script$#@62;标签之间填入下面VBScript脚本(创建一名为Test的过程):

  Sub Test

  Response.Write“嗨,我是一测试方法。”End Sub第三步:从左手边的Design-Time Controls工具栏中拖PageObect控件到网页中,系统会自动弹出对话框问是否选择脚本对象模型(Object control model)。选Yes。设置该网页对象名为Callme。

  第四步:鼠标右击该控件,从弹出的菜单中选Properties。

  第五步:从弹出的Properties窗口中选Methods标签页,在Navigate methods列表框中选Test过程,然后关闭此窗口。这里,Test过程就被定义为该网页对象的一个Navigate方法。如图:

  第六步:再在Project1工程中创建一新ASP网页Caller.asp。

  第七步:拖PageObject控件到新网页中并用鼠标右击该控件设置其Properties。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Winsock编程框架

下一篇:自建聊天室的善后处理例子