以下是《CORBA企业解决方案》一书的序言,如需要我可以所电子版发给你
------------------------------------------------------------------
     我们假定用户需要在一复杂的软硬件环境中编写应用程序,或是需要把一整套组件/应用程序集成到一灵活的企业级系统中。我们还假定用户强烈要求自己的应用程序能运行起来,或者自己的系统能够集成起来,但对于重新创建各个部件却不感兴趣。这样,用户就需要得到尽可能多的帮助,帮助的形式既可以是能购买到的可实现软件,也可以是能采用的技术。     也许这种复杂性是由于用户的应用程序/企业必须运行在分布式硬件系统上而产生的,因此必须解决网络带来的边界问题。又或许用户不得不处理由于不同的组件用不同的语言编写所引起的问题;又或许这些组件需要运行在不同的操作系统上。又或许用户(作为世界上唯一的建筑师或经理)正处理一个完全同种类的环境,但应用程序/组件必须越过不同部门或公司的边界进行访问。     如果真的出现以上情况,用户就很可能要用到对象请求代理来帮助越过这些边界—而实际上所用的代理可能就遵循着CORBA标准。使用CORBA的原因在于系统中的组件能越过这些边界进行相互通信,而用不着编写一个软件层来提供越过边界的桥梁。CORBA提出的不止是基本的通信需要,还有其他很多的内容。就像在点到点通信中,CORBA也能提供变化,如同多对多通信和存储转发一样。对象可做成安全的;对象可以存储在数据库中;数据库可以越界访问;在一单独的事务中,多个数据库可自动更新;系统可以在不同的层次上进行监控和管理;对象可以通过名字或是用户希望的属性来寻找。     那么,本书在哪些方面可以起到作用呢?分布式系统研究大概始于1980年或更早些时候,在接近二十年的时间内,我们对它的理解不断加深。这种理解实际是集中在如接口定义、安全性、实体命名、事务、通信选择、两层或三层体系结构、数据库集成、容错性、系统管理等领域。用户如果对自己系统中重要的方面有着深刻的理解,那么就能更快更好地实现该系统。本书涉及了以上的所有领域,另外,对于CORBA环境,还给出了采取什么方法比较好的实践性建议。     Dirk、Jason和Perry对这些领域有着深刻的了解。他们研究过调查结果,还担任过多个与这些问题相关项目的顾问。他们的贡献在论述了与现代系统相关的各个方面,并把这些方面依次和CORBA框架联系起来。CORBA在系统中很容易用来克服多种限制,本书描述了用户想要在应用层上用到的技术,以便最好地利用CORBA,并使自己的系统尽可能简单地实现。     CORBA的发展方向何在?早期(到90年代中期),CORBA的目标是提供跨越边界的框架。第二个阶段(到1998年),内容有所丰富(安全性、事务、多通信、数据库集成等),并且在CORBA中还集成了很多其他技术。因此,CORBA在使用了COM的环境中同样工作良好;它采纳了Java作为首要语言,并加入了其他设施以允许它在企业内使用;而且CORBA能安全地越过防火墙使用。那么往后几年的目标是什么呢?     首先,和其他技术的集成还会继续。EJB在这里很重要—或更具体地说,是在Java环境中持续加入功能设施,以允许编写多特征的客户机和服务器。CORBA和标准企业应用程序的集成也会作为有用的功能设施提供,而不是为每个应用程序编写代码。     其次,CORBA会变得越来越容易使用,现在出现的程序员生产工具就是明证。在这里一个关键领域是客户机和服务器或至少是它们中的一部分基于脚本的生成。C++和Java代码可以以这种方式产生,这就减少了人们必须编写的和应用相关的代码数量。使用工具的其他优点在于让系统管理者有更多的监控和控制设施可用。     第三,组件这个概念变得越来越重要。组件是一个对象,里面只含有业务级的代码,而没有和安全性、事务、命名等方面相关的代码。因此,一个组件可以给定不同的安全属性而不用改变对象的代码,在某种意义上,它可以“融”入不同的安全环境而不用改变它的代码,即使这些安全环境是以不同的方式实现的。类似地,组件是否是事务性的,不是由组件本身决定,而是由它所融入的环境(或容器)来决定。     业务级代码和基础级代码的分离是提高生产率的一个关键方面。这样做的一个好处是软件在所需执行的环境中的变化可以留待以后证明。同样的组件可以融入一纯CORBA容器、或是一EJB容器、或是一COM容器。这样,如果组件融入一COM容器中,它可以自己用COM来进行通信,也可以在使用了自动桥梁的其他环境中进行通信。如果它融入到一CORBA容器中,CORBA就是它自身的通信环境,就需要一自动的桥梁来从COM中访问它。当这些发生时,业务级的代码不用改变。     这些改善都在进行当中,并会减少跨越边界的软件的编写任务。自动化并不会减少对有经验的软件工程师和设计师的需要,他们对分布式计算的重要技术的理解,以及在不同的情况下如何找出最适合的技术仍然是很重要的。我非常感谢本书的三位作者,他们花了大量时间,不辞劳苦地把这些技术和CORBA关联起来,并把多年的研究和开发结果公诸于众,书中没有多余的空话。此外,他们还指出了这些技术的相关发展方向。     Sean Baker IONA Technologies的创始人之一