Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Component Object Model

Tags:

.net

com

My question is directed towards developers who are familiar with COM. I am currently writing my college thesis which is partially about Microsoft COM.

  1. is COM still used today for purposes besides legacy code
  2. everyone says COM is obsolete. Why is the new Windows Runtime an 'enhanced' COM based API? What is meant by the word 'enhanced'
  3. are there any significant upsides to COM compared to .NET or vice versa
  4. any recommendations where to learn more about COM and .NET Interop and how exactly does it work

Please support your answers with facts as much as possible! Thank you.

like image 339
Andro Avatar asked Oct 19 '13 19:10

Andro


People also ask

What is meant by Component Object Model?

Component Object Model (COM) COM is a platform-independent, distributed, object-oriented system for creating binary software components that can interact. COM is the foundation technology for Microsoft's OLE (compound documents) and ActiveX (Internet-enabled components) technologies.

Is COM still used?

COM is still in wide use today, although it's considered an older cousin to the . NET Framework. Many technologies you rely on, and use with PowerShell, are still based on COM.

What is component model in C#?

Provides classes that are used to implement the run-time and design-time behavior of components and controls. This namespace includes the base classes and interfaces for implementing attributes and type converters, binding to data sources, and licensing components.


1 Answers

  1. Yes.

  2. COM is still core to the way Windows works. Wherever a C-style api won't suffice, COM is the next step to expose an object model. And yes, Store apps are COM servers.

  3. COM is native code, it adds very little overhead and is usable from practically any language that was ported to Windows.

  4. Visit amazon.com to search for books, read the reviews.

It is not essential anymore to have to know COM to write programs that run on Windows. Lots of work was done to wrap it and make it friendlier. The language projections in Store language runtimes are notable, there are very few traces of the underlying COM code visible. Relegating it to a status that's comparable to learning assembly language programming.

like image 171
Hans Passant Avatar answered Sep 29 '22 13:09

Hans Passant