En el diseño de software orientado a objetos , una capa es un grupo de clases que tienen el mismo conjunto de dependencias de módulo de tiempo de enlace con otros módulos. [1] En otras palabras, una capa es un grupo de componentes reutilizables que son reutilizables en circunstancias similares. En los lenguajes de programación, la distinción de capas a menudo se expresa como dependencias de "importación" entre módulos de software.
Las capas a menudo se organizan en una jerarquía en forma de árbol , con relaciones de dependencia como vínculos entre las capas. Las relaciones de dependencia entre capas suelen ser relaciones de herencia , composición o agregación , pero también se pueden utilizar otros tipos de dependencias.
Capas es un patrón arquitectónico descrito en muchos libros, por ejemplo Arquitectura de software orientada a patrones [2]