What is a Software Component?

Before I talk about .NET as an enabling technology for creating and using software components, it makes sense to define what a software component is. A software component is a binary, self-contained, reusable, and language-neutral piece of software that is used as a building block for applications. It's important to understand the distinction between an application and a software component. You can use Microsoft Word as an application to write letters or even a book (in fact, I am doing that right now), but Microsoft Word is also a software component. It has an API—that is exposed through COM—and, through this API, you can use Microsoft Word as a report writer. When you are writing a letter or a book with Word, you ...

Get .NET and COM Interoperability Handbook, The now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.