You are currently viewing a snapshot of www.mozilla.org taken on April 21, 2008. Most of this content is highly out of date (some pages haven't been updated since the project began in 1998) and exists for historical purposes only. If there are any pages on this archive site that you think should be added back to www.mozilla.org, please file a bug.



Component

Definition

  • A component "is a [binary] unit of composition with contractually specified interfaces and explicit context dependencies only" (Component Software, p. 34).
  • A component "can be deployed independently and is subject to composition by third parties" (Component Software, p. 34).
  • A component "has no persistent state" (Component Software, p. 34).
  • A component contains a single class blueprint, information regarding registration of the component, and certain code relating to object instantiation and server implementation.

Notation

The symbol for a component is the same as specified in UML, namely a rectangle with two smaller rectangles attached along the left edge. The name of the component is entered at the top left. Interfaces should be attached along the top or right edge (see Interfaces section). A component symbol may contain classes and objects as well as miscellaneous other symbols representing registry information and certain component implementation details.

In most cases, registry information and implementation details may be assumed and thus omitted from any diagram: