Layer (object-oriented design)

Layer (object-oriented design)

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.

Layers is an Architectural pattern described in many books, for example Pattern-Oriented Software Architecture [http://hillside.net/patterns/books/Siemens/abstracts.html Pattern-Oriented Software Architecture - A System of Patterns]

Notes

ee also

* John Lakos "Large-scale C++ software design". Addison-Wesley, 1997.
Common layers in an information system logical architecture


Wikimedia Foundation. 2010.

Игры ⚽ Нужен реферат?

Look at other dictionaries:

  • GRASP (Object Oriented Design) — GRASP stands for General Responsibility Assignment Software Patterns (or sometimes Principles). It is used in object oriented design, and gives guidelines for assigning responsibility to classes and objects.Examples of different… …   Wikipedia

  • Object-oriented operating system — An object oriented operating system is an operating system which internally uses object oriented methodologies. An object oriented operating system is in contrast to an object oriented user interface or programming framework, which can be placed… …   Wikipedia

  • Layer — may refer to: * A layer of dieposits found on archaeological excavation isolated as a single context in the stratigraphy of the site * A layer hen, a hen raised to produce eggs. * In abstraction, a layer is an abstract place conceived as having… …   Wikipedia

  • Object-relational impedance mismatch — The object relational impedance mismatch is a set of conceptual and technical difficulties that are often encountered when a relational database management system (RDBMS) is being used by a program written in an object oriented programming… …   Wikipedia

  • Service-oriented analysis and design — As service oriented architecture (SOA) and the service oriented computing platform mature more formal approaches and methodologies to building service oriented solution logic have emerged. These build upon earlier analysis and design processes… …   Wikipedia

  • Feature Oriented Programming — (FOP) or Feature Oriented Software Development (FOSD) is a general paradigm for program synthesis in software product lines. FOSD arose out of layer based designs of network protocols and extensible database systems in the late 1980s cite web |… …   Wikipedia

  • Service Oriented Programming — (SOP) is a programming paradigm that uses services as the unit of computer work, to design and implement integrated business applications and mission critical software programs. Services can represent steps of business processes and thus one of… …   Wikipedia

  • Domain-driven design — (DDD) is an approach to developing software for complex needs by deeply connecting the implementation to an evolving model of the core business concepts.[1] The premise of domain driven design is the following: Placing the project s primary focus …   Wikipedia

  • Aspect-oriented programming — (AOP) is a programming paradigm that increases modularity by allowing the separation of cross cutting concerns.Separation of concerns entails breaking down a program into distinct parts (so called concerns , cohesive areas of functionality). All… …   Wikipedia

  • Common Object Request Broker Architecture — The Common Object Request Broker Architecture (CORBA) is a standard defined by the Object Management Group (OMG) that enables software components written in multiple computer languages and running on multiple computers to work together (i.e., it… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”