HOME

TheInfoList



OR:

In software 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. In programming languages, the layer distinction is often expressed as "import" dependencies between software modules. Layers are often arranged in a tree-form
hierarchy A hierarchy (from Greek: , from , 'president of sacred rites') is an arrangement of items (objects, names, values, categories, etc.) that are represented as being "above", "below", or "at the same level as" one another. Hierarchy is an important ...
, with dependency relationships as links between the layers. Dependency relationships between layers are often either inheritance, composition or
aggregation Aggregation may refer to: Business and economics * Aggregation problem (economics) * Purchasing aggregation, the joining of multiple purchasers in a group purchasing organization to increase their buying power * Community Choice Aggregation, the ...
relationships, but other kinds of dependencies can also be used. Layers is an
architectural pattern An architectural pattern is a general, reusable solution to a commonly occurring problem in software architecture within a given context. The architectural patterns address various issues in software engineering, such as computer hardware perform ...
described in many books, for example ''Pattern-Oriented Software Architecture''Pattern-Oriented Software Architecture - A System of Patterns


See also

*
Abstraction layer In computing, an abstraction layer or abstraction level is a way of hiding the working details of a subsystem. Examples of software models that use layers of abstraction include the OSI model for network protocols, OpenGL, and other graphics libra ...
* Multitier architecture *
Shearing layers Shearing layers is a concept coined by architect Frank Duffy, which was later elaborated by Stewart Brand in his book, '' How Buildings Learn: What Happens After They're Built'' (Brand, 1994), and refers to buildings as composed of several layers ...


References

Object-oriented programming Software design {{compsci-stub