远程调用与本地执行, 功能简化与功能集中
与传统的基于Visual Basic 的应用程序不同,Web 应用程序的客户端通常是一个浏览器,而浏览器具有一些我们事先无法确定的功能特性和处理能力。比如:如果你为一个公共的Web站点创建应用程序,客户可以通过各种不同的浏览器来访问它。其中有些浏览器对我们刚才在上面所提到的某些任务的处理能力可能是有限的。
而另外一些浏览器则可以执行非常复杂的任务处理工作。Microsoft Internet Explorer (4.0 或是更高版本)就是这种具有很强的任务处理能力的一个很好的例子,它提供了对动态HTML语言(DHTML)广泛的支持。当然,在所有客户端实体中,标准的Visual Basic 所提供的信息内容最为丰富。利用Visual Basic,你甚至根本不通过浏览器就可以创建Web应用程序——与以前的Web应用程序不同的是:它使用了一个包含了Web浏览功能或者是其他Web 技术的Visual Basic 窗体。
在客户端处理能力的不同情况是决定如何设计你的Web应用程序的一个重要因素。比如:你的应用程序是否需要被不同的浏览器访问?或者是事先你是否知道所有的用户将会使用Internet Explorer 4.0 或其更高版本?你的应用程序是否包含Visual Basic 窗体?有时我们用术语“远程调用”和“本地执行”来形容Web应用程序在客户端处理能力的这些不同情况。
一个“远程调用”应用程序指的是它能够被各种各样的客户所使用。在Web 环境中,它指的是可以被任何浏览器访问的一个应用程序。比如象Hotmail™这样一个应用程序,你可以在任何一台计算机上用任何一种浏览器来访问它。因此,在Web 环境下就可以通过很多渠道对Hotmail™进行访问。与此不同的是,一个本地执行的应用程序提供了对用户经常使用的一些操作的支持(这是理所当然的)。通常这种类型的应用程序提供了丰富的用户界面,并能对用户的操作作出更快的反应。
远程调用与本地执行之间并不是象黑与白那样区别明显,我们可以用一个度来描述两者之间的关系。下面的图示将使你对这个度的范围有一定的了解。
图1. 远程调用型与本地执行型应用程序
通常,我们又可以把客户端应用程序分为“功能简化型”和“功能集中型”这两种类型,它们也表现出了不同的客户端处理能力。一个“功能简化型”的客户端应用程序包含较少的处理功能,因此从定义上讲它不属于本地执行这种类型的应用程序。而一个功能集中型的客户端应用程序将许多功能特性集成到客户端,这样也使得它所包含的功能模块更多。按照上面的对“功能简化型”和“功能集中型”这两种类型客户端应用程序的定义和说明,一个集成了窗体,程序代码,和Visual Basic 运行库,典型的基于Visual Basic 的应用程序应当归入功能集中型这类应用程序。