Chapter 1 pointed out a number of issues the developer must face when working with COM. You also learned about DCOM issues and how they affect the distributed programming environment. COM+ relies on both of these technologies, so it shouldnt be too surprising to learn youll run into the same problems working with COM+ that you do working with either COM or DCOM. For example, making COM+ applications work across an Internet connection through a firewall is just as hard a task as it is with DCOM applications.
COM+ also includes a few problems of its own. As with COM and DCOM, many developers find COM+ daunting to learn. However, COM+ increases the learning curve by adding more functionality. You not only have COM and DCOM issues to worry about, you also have additional concerns such as how to use certain features. Many developers still dont understand how the publish/ subscribe model works, and others find role-based security a long leap from COM and DCOM security options.
Another problem is that COM+ tends to change the rules. For example, when working with COM or DCOM, a developer was encouraged to allocate a resource and then hold onto it until every possible need was met. COM+ changes this rule by insisting the developer allocate a resource, use it as quickly as possible for the task at hand, and then release it. In sum, theres a contradiction in the way that COM and COM+ handle the same issue. This problem causes confusion in the developer communitymore confusion than even COM and DCOM created.
Note that Microsoft recognized some deficiencies in the COM and DCOM approach when they were creating the COM+ technology and worked to eliminate these deficiencies. Instead of using the straight connection found in COM and DCOM, COM+ relies on interceptors (code that captures the communications stream and performs either pre- or post-processing to add functionality to the technology). For example, COM+ relies on interceptors to provide the role- based security many developers have found to be a useful alternative to the security COM provided in the past.
One of the more important improvements in COM+ is the management features it provides. Youll learn about COM+ management in the Using the Component Services MMC Snap-In section that follows . The short explanation is that you dont need to worry about the registry as much when working with COM+. Most of the administrative tasks youll perform occur within a GUI or when using specially created installation programs.