1、COM的作用
COM作为一种软件模型,提供了程序之间通信的标准,但其最大的贡献在于对程序设计方法的变革。COM结合了对象技术和组件技术两种特性。对象特性使得应用系统的设计和实现更加符合现实世界的面貌;组件特性使得应用系统可以充分发挥组件的优势,以适应现代应用的需要。
2、组件的特性
组件之间可以在二进制级别上进行集成和重用;组件必须被独立地生产、获得和配置。
组件接口描述了组件对外提供的服务,组件和组件之间、组件和客户之间同时通过接口进行交互。组件接口必须是能够自我描述的,组件应该保持接口不变。
3、基于COM的组件化程序设计方法
组件化程序设计方法继承并发展了面向对象程序设计方法。组件化程序设计方法强调真正的软件重用和高度的互操作性。
4、MTS
MTS,Microsoft Transaction Server,它为我们提供基本的组件运行和配置环境。MTS为分布式应用提供了底层的基础设施,它把应用系统的客户程序与应用组件对象以及各种资源有机地组织起来。
在MTS应用中,所有的组件对象都运行在MTS运行环境中,这些组件对象实现了基本的应用逻辑规则。由于MTS把组件对象有机地管理起来,它的运行环境负责所有并发性处理、资源管理、安全性管理、环境管理等系统级特性处理,因此,开发人员在编写组件对象时可以忽略这些要素,只需简单地实现基本的应用逻辑规则即可。
MTS应用可以包括多个MTS服务进程,每个服务进程运行一个或多个组件对象,所以MTS应用的每个组件对象必须是进程内组件对象,它们运行在MTS服务进程中。在MTS服务进程中,除了这些应用组件对象之外,MTS也提供了许多服务,包括线程管理服务、环境管理服务、资源分发管理等等。MTS正是通过这种方式来提供各种系统服务的。
资源管理器是MTS应用管理永久数据的基本手段,它使用了Microsoft的DTC(distributed transaction coordinator,分布式事务协调器)系统服务,通过两阶段提交的方式实现了事务(transaction)功能。
MTS实现了两种资源分发器:ODBC资源分发器和共享属性管理器。
MTS只是一个COM组件对象的管理器,它通过一组内置的服务来简化复杂应用系统的开发。
5、MTS程序设计概念
(1)事务
事务是一个抽象概念,它是指一组数据操作的整体。事务具有四个特性:原子性(atomicity)、一致性(consistency)、隔离性(isolation)和永久性(durability),这些特性可简写为ACID。
(2)MTS对象
MTS对象是指运行在MTS环境下的COM组件的一个实例,MTS为每个对象维护一个环境对象。
(3)MTS客户
MTS客户是指MTS对象的客户程序,它可以是一个应用程序,运行在MTS环境之外,这种客户我们称为基客户;MTS客户也可以是另一个MTS对象,所以,MTS客户与对象的概念也是一个相对概念。
(4)安全性控制
MTS推荐使用基于角色的安全模型,角色是MTS安全模型的核心,一个角色定义了用户的逻辑组合。