La programación orientada a atributos ( @OP ) es una técnica de marcado a nivel de programa. Los programadores pueden marcar elementos del programa (por ejemplo, clases y métodos) con atributos para indicar que mantienen la semántica específica de la aplicación o del dominio. Por ejemplo, algunos programadores pueden definir un atributo de "registro" y asociarlo con un método para indicar que el método debe implementar una función de registro, mientras que otros programadores pueden definir un atributo de "servicio web" y asociarlo con una clase para indicar que la clase debe implementarse como un servicio web. Atributos de la lógica central de la aplicación (o lógica empresarial)) de la semántica específica de la aplicación o del dominio (por ejemplo, funciones de registro y servicios web). Al ocultar los detalles de implementación de esa semántica del código del programa, los atributos aumentan el nivel de abstracción de la programación y reducen la complejidad de la programación, lo que resulta en programas más simples y legibles. Los elementos del programa asociados con los atributos se transforman en programas más detallados mediante una herramienta de apoyo (por ejemplo, un preprocesador ). Por ejemplo, un preprocesador puede insertar un programa de registro en los métodos asociados con un atributo de "registro".
Programación orientada a atributos en varios lenguajes
Java
Con la inclusión de Metadata Facility para Java (JSR-175) en la versión J2SE 5.0, es posible utilizar programación orientada a atributos desde el primer momento. La biblioteca XDoclet hace posible utilizar un enfoque de programación orientado a atributos en versiones anteriores de Java.
C#
El lenguaje C # ha admitido atributos desde su primera versión. Sin embargo, estos atributos se utilizan para proporcionar información en tiempo de ejecución y no los utiliza un preprocesador (no hay uno en la implementación de referencia de C #).
UML
El lenguaje de modelado unificado (UML) admite un tipo de atributo llamado estereotipos .
Cortar a tajos
El lenguaje de programación Hack admite atributos. Los atributos se pueden adjuntar a varias entidades del programa, y la información sobre esos atributos se puede recuperar en tiempo de ejecución mediante la reflexión.
Herramientas
- Herramienta de procesamiento de anotaciones (apt)
- Spoon , un transformador de programas Java basado en anotaciones
- XDoclet , un generador de programas impulsado por Javadoc
Referencias
- "Programación orientada a atributos" . Introducción a la programación orientada a atributos . Archivado desde el original el 26 de mayo de 2005 . Consultado el 22 de julio de 2005 .
- Wada, Hiroshi; Suzuki, Junichi (2005). "Modelado del sistema Turnpike Frontend: un marco de desarrollo basado en modelos que aprovecha el metamodelado UML y la programación orientada a atributos" (PDF) . En Proc. de la 8ª Conferencia Internacional ACM / IEEE sobre lenguajes y sistemas de ingeniería impulsados por modelos (MoDELS / UML 2005). Archivado (PDF) desde el original el 3 de marzo de 2016 . Consultado el 21 de marzo de 2006 .
- Rouvoy, Romain; Merle, Philippe (2006). "Aprovechamiento de la programación orientada a componentes con la programación orientada a atributos" (PDF) . En Proc. del XI Taller Internacional ECOOP sobre Programación Orientada a Componentes (WCOP 2006). Archivado desde el original (PDF) el 23 de diciembre de 2006.
enlaces externos
- Don Schwarz. Echando un vistazo dentro de la caja: programación orientada a atributos con Java5
- Sun JSR 175
- Atributos y reflexión : capítulo de muestra del libro Programación C #
- Proyecto de modelado de Turnpike
- Fraclet : un modelo de programación basado en anotaciones para el modelo de componente Fractal
- Libro de desarrollo de software habilitado por atributos