Microsoft’s recent introduction of COM+ its distributed object standard, has again brought up the debate concerning its major competitor CORBA and their roles in distributed object standards. COM+ offers many advantages with its objective of making easier the process of writing COM-based components and applications that use those components.

COM+ simplifies the COM programming model by making the model look more like the model of the programming language you ordinarily use. With COM+ you write classes with your favorite development tool, and COM+ takes care of the details of turning those classes into COM components and applications. COM+ is language neutral. It doesn’t care what programming language you use to implement your components with—the only requirement is that your programming language support some syntax that represents COM+ requests.

You use the COM+ model to develop application components. A component is a set of code that can provide objects of a particular type at runtime. Components are analogous to classes in object-oriented programming languages. Converting classes into COM objects has required additional methods and type libraries to describe the classes and interfaces that a component exposes. The COM+ specification attempts to simplify the COM component development process by automatically providing the required methods and class descriptions. Although COM+ does simplify the process of creating COM components, a few constraints limit the ways you can implement COM+ classes. For example, you might not be able to use all the features of your programming language when developing your classes.