Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

The real question is probably "Is COM a bad idea?"

And I don't think it is. But COM itself was such a pain to deal with. Notably all of my time with it was spent from within .NET so maybe it was less painful in C++-- but .NET was at least partially designed to work well with COM. Insert crying emoji.

(Of course I think Microsoft intended us to stop using COM and instead use SOAP, but that didn't happen)



Since Vista that COM is the main delivery mechanism for new Windows APIs.


SOAP is an object access protocol. COM is an component object model. How is SOAP providing a component model?


The only really important and surviving part of COM isn't the "component model idea", but that COM enables versioned interfaces and dynamic linking with a stable ABI for high level languages that usually don't have a stable ABI (like C++) by defining a standard of how high level language concepts can be tunneled through a regular C API.


Which is even overlooked is how similar ideas have been adopted in Apple and Google platforms (XPC, IO/Driver Kit, AIDL/Binder, FIDL/zircon), less so in GNU/Linux as not all distributions rely on D-BUS for similar ideas.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: