Modularity - Components

A component is a piece of software that is often larger than a class, but smaller than a complete program. It provides a useful service or set of services and can be called by some other program - or linked with some other components.

The three major approaches have been:

·        In Microsoft terminology components are called COM, DCOM, ActiveX and COM+ - which are all different varieties of the same idea. For example, from a Visual Basic program you can use a collection of methods that provide internet socket programming. These are encapsulated within a component called WinSock.

·        In Java terminology components are called JavaBeans.

·        Independently, the OMG (Object Management Group) have specified CORBA (Common Object Request Broker Architecture).

There are currently 2 major component frameworks:

·        Sun's Java 2 Enterprise Edition (J2EE) (see here for an online tutorial - not an easy read!)

·        Microsoft's .Net

Here is an article that compares the two.