The smallest unit of deployment, with a well-defined API.
Component architecture diagram

How does it work?

A component is deployed as a separate entity. It has a documented an rigid interface that other components can rely on. For complex functionality, component are combined.

Components can be used as part of a larger application, but also as complete applications by themselves.


  • DLL
  • Component Object Model (COM)
  • jar files
  • Unix commands

When should you use it?

When code reuse is important. When a large number of unrelated developers work on the same platform.


  • There is an overhead involved in developing software as individual components.