日期:2013-04-25  浏览次数:21125 次

玩了一年的ASP
现在头头突然要我搞lotus domino/notes。唉,没办法~~
这里有一篇关于ASP与LOTUS DOMINO/NOTES的文章,各位看看,说说看法
-------------------
(转http://go2.163.com/~notes/xuexi/ynjd0026.htm)
发信人: liuzheng.bbs@sh.netease.com (漂流瓶), 信区: Groupware
标 题: ASP和Domino的比较
发信站: 网易虚拟社区上海站 (Fri Mar 5 11:35:49 1999)
转信站: Netease2!Netease3

Active Server Pages 和 Lotus Domino 的比较
 
  ASP(Active Server Pages) 是基于服务器段端的编程框架,是运行在IIS内

的一系列互相关联的脚本引擎部件,目的是动态产生Web页面——内容由嵌入在W

eb页面的脚本程序通过ASP引擎动态产生。ASP与传统的基于CGI、PERL等繁琐的方

式将动态数据技术集成WEB相比较,有了很大的提高。作为一种动态的数据引擎,

ASP在某中程度上可与Domino作些比较。要求大量的时间和开发资源,ASP可以创

建不同类型的应用,但是这些应用还只是最基本层次的。从根本上说,它适合用

来创建简单的、基于数据驱动的Web页面,尤其是仅仅基于Windows NT上应用。相

对来说,Domino提供的跨平台应用开发,是基于“偶尔编程Code-by-Exception”

的方法,而微软则采用了“处处编程Code-by-default”的方法。Domino提供了可

以结合良好适应性的编程逻辑的各种高级的应用编程构件,如子表单、表单、视

图、代理等。利用较高层的编程手段,通过简单的点击对话,Domino采用简单命

令或Notes公式就可以完成编程。更复杂的Domino应用,则可以采用脚本语言、J

ava、JavaBean或ActiveX控件。所有的编程方法,都访问到集成在Domino中功能

服务,如企业数据集成、消息传递、安全性、工作流、日程表、内容索引、全文

索引、目录管理等。所有这些,使得Domino的应用可以迅速地被创建和修改。开

发者可以把主要精力放在应用逻辑的处理上,而不是底层的代码编写上。


服务器脚本语言:
  在IIS服务器中,ASP服务器脚本语言是最主要的基础。然而,它需要开发者

将所有的逻辑用脚本语言编写,并且只有该页面被调用时才会被激活。Domino提

供了一种适应性更强的服务器端脚本编程能力,以及代理管理技术。应用逻辑的

实现是“偶尔编程的”:可以采用对话框的界面方式来编程,也可运用Notes公式

、Java、兼容Basic语言的LotusScript 语言等。并且,代理不但可以在不同的页

面事件中触发,而且可以基于调度的,可以不需用户的干预而触发。

动态/个性化的页面:
  通过ASP技术,可以执行基于HTML页面中的应用逻辑,提供了动态和个性化的

内容。而这些只是Domino的缺省属性:每一个设计元素都是可编程的,用户的身

份由Domino自然维护,Domino在用户请求的同时自动产生页面。开发者不需要跟

踪用户的身份,也不需手工编写或维护复杂的脚本程序和HTML页面来产生动态的

,个性化的内容。
数据库驱动的页面:
  通过动态数据对象(ADO),ASP脚本可以在WEB页面中访问后台数据库。Dom

ino通过跨平台的LS:DO方式提供同样的方式,访问ODBC数据源。事实上,通过OL

E的方式,如果限定在Windows NT上,开发者同样可以利用ADO方式访问数据库。

除此以外,利用集成在Domino中的企业集成连接件(DECS),开发者可以不需编

程就在Domino应用中能访问到企业数据库资源。Domino可以直接访问DB2、Oracl

e、Sybase、文本文件和文件系统,或EDA/SQL系统。此外Domino还可以集成SAP、

e、Sybase、文本文件和文件系统,或EDA/SQL系统。此外Domino还可以集成SAP、

事务处理系统、MQseries、CICS等等。
将内容与业务逻辑相分离:
  微软鼓励开发者将应用逻辑编写在客户自己制作的控件中,即将应用源码与

ASP服务器本身分开。然而,即使控件中包含了某些静态的业务逻辑,需要根据不

断变化的业务逻辑来访问和操纵这些控件的脚本,依然存在于ASP的HTML页面中。

这种基于页面的方式,使得代码的维护变得非常困难。一个布局的改变,或者一

个控制控件的逻辑改动,将要牵涉到很多的文件。改变后的页面不得不用手工方

式进行发布。(采用手工修改,或将该过的文件通过文件系统拷贝)到运行该应

用的服务器上。相比之下,Domino采用基于表单的方式,将逻辑区分于布局,而

且通过广泛使用设计模板,真正做到使应用与设计、逻辑分离。表单用于控制布

局,在表单中,元素背后存放逻辑(字段,代理,操作),这使得在页面中的布

局与逻辑区分开来。在模板中,存放了所有的设计元素(字段,代理,操作)。

维护时,只需要对应用模板更新。通过Domino 的复制机制,能够将所做的修改自

动发布的所有相应的服务器上。所有升级工作将由系统自动地按预先安排来完成


开放的脚本:
  ASP技术提供了内置的对VBScript 和JScript的支持。JScript是基于ECMA-2

62标准的语言:兼容JavaScript。Domino提供可扩展的、开发的脚本编程环境。

除了与BASIC兼容的LotusScript之外,可使用Java来编写服务器端程序。并且,

Domino“偶尔编程”的开发手法,提供了开发效率,具有更广泛的适应力:除了

脚本编程之外,对于复杂逻辑的实现,Domino提供了非编程实现的办法:如高层

次的应用开发部件(如表单、视图、字段等等),对应用服务(如数据连接、报


文传递、工作流、安全性等)的简单访问方法,支持高效率的逻辑实现方法(如

点击对话框、简单命令、易学的Notes公式语言)。结合复杂脚本编程手段与能够

被多种工具利用的、开放的对象模型,使得Domino成为既强大有开放的编程开发

环境。
独于的浏览器:
  ASP脚本中可以嵌入逻辑,以判断查询该页面的浏览器的类型。利用这些信息

,应用程序开发者可以针对不同的浏览器提供不同版本的页面。缺省地,不需人

工干预,Domino就可以提供与浏览器独立的HTML页面。采用与ASP一样的方式,D

omino可以通过编程增强对浏览器类型的判断:通过CGI变量获取客户机类型信息

,编写应用逻辑,返回不同类型页面。
可操作性:
  微软认为用ASP开发WEB应用是“可操作的”。客户化的页面、动态产生的HT

ML页面,可以用ASP技术与VBScript技术很容易地实现,远胜过传统的WEB开发工

具如C、PERL、CGI等。在这方面Domino则远远超过了ASP技术:“偶尔编程”的开

发方式、高层次的开发部件、基于表单的而不是基于页面的开发办法、可面向非

专业开发人员的应用开发,以及功能高级的编程能力,和通过用模板来管理应用

,用复制机制分发应用等等。
用Domino开发Web应用的优势

  今天,微软的ASP技术,主要是被用于创建基于Web的前端连接到现有的后端

系统或数据库的应用。但开发用于处理业务流程、管理工作流或加强协同工作的

应用,还需要许多附加的系统及大量的需要编程的组件集成工作。这其中包括:

应用,还需要许多附加的系统及大量的需要编程的组件集成工作。这其中包括:

需要定义储存机制,核心基础服务需要安装与配置的、并且需要通过手工的方式

集成对象,需要创建的客户化Active Server Component 以及为上述组件的组合<