Jump to content

Layer (object-oriented design)

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Mikeblas (talk | contribs) at 16:39, 19 November 2006 (Disambiguate Module to Module (programming) using popups). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

In object-oriented design, a layer is a group of classes that have the same set of link-time module dependencies to other modules. In other words, a layer is a group of reusable components that are reusable in similar circumstances.

Layers are often arranged in a tree-form hierarchy, with dependency relationships as links between the layers. Dependency relationships between layers are often either inheritance, composition or aggregation relationships, but other kinds of dependencies can also be used.

See also

  • John Lakos Large-scale C++ software design. Addison-Wesley, 1997.