Presentation is loading. Please wait.

Presentation is loading. Please wait.

Intro to COM What is it and what can it do for me?

Similar presentations


Presentation on theme: "Intro to COM What is it and what can it do for me?"— Presentation transcript:

1 Intro to COM What is it and what can it do for me?

2 COM Defined COM (Component Object Model) and DCOM (Distributed COM) are a set of binary and network standards for the modeling of objects and their communications.

3 OK, What are Components? Components are big brother of Classes. Component = Object Interface = Function Set of that Object Properties = Member Variables –(all Properties are actually get & put calls) Methods = Functions BONUS: Components can have more than one interface.

4 What makes up a Component? Implementation object Interface object(s) IFooExIFoo Implementation Object IUnknown Components are well-encapsulated objects

5 Identifiers GUID (globally unique identifiers) –are stored in 16-byte (128 bit) structures CLSID (class identifier GUID) IID (interface identifier GUID) IUnknown QueryInterface –Returns a pointer to requested Interface AddRef –Increases the RefCount Release –Decreases the RefCount

6 Where do components live? In-Process servers (.dll) Out-of-Process servers (.exe) Remote servers (.exe) ActiveX (.ocx)

7 Using Components Rapid Application Development Seamless application updates Build great apps without reinventing the wheel Interface different systems with ease Examples: Serial port communications, Scanner image capture, Image archive systems, internet server interaction (CDDB)

8 What languages can I use? C++, Java, Visual Basic and VB Script (IIS) ActiveX technology, Use MS ATL (VC++) Component creation Component use in applications

9 Why should you learn COM? Saves tremendous time (after the initial learning curve) Use of existing objects Object Reuse: C++ tried to address this issue, but just made it easy to reuse source code. So you can use DCOM.

10 Parallel Programming Three main types of applications: –CPU intensive graphics rendering BFA –Resource Specific DCOM lets you do this seamlessly –Highly connected custom data, application structures hybrid memory models

11 Cradle - Traveling Salesman

12 6min 30 sec 16 sec

13 197 days 3.5 Days

14 Life 3D

15 Life3D face relationships 21 43 56 1 5 62 3 4

16 Symera Viewer

17 Clustering Scenarios Tight Coupling Loose Coupling

18 Life3D Class Conversion CMainWindowCFaceWindow CCubeFace (interface) CFace (implementation) CSymObjCSymObjRef Original classes New classes Symera base classes CCubeFace CSymObj User Interface Distributed Object

19 Recommended Reading Dr. GUI articles on COM - a MUST READ Essential COM by Don Box Inside COM & Inside Distributed COM (MS Press) ActiveX/COM Control Programming (WROX Press) For the complete history and theory, read: –Inside OLE (MS Press)


Download ppt "Intro to COM What is it and what can it do for me?"

Similar presentations


Ads by Google