HOME

TheInfoList



OR:

Attribute-oriented programming (@OP) is a technique for embedding metadata, namely attributes, within program code.


Attribute-oriented programming in various languages


Java

With the inclusion of Metadata Facility for Java (JSR-175) into the
J2SE Java Platform, Standard Edition (Java SE) is a computing platform for development and deployment of portable code for desktop and server environments. Java SE was formerly known as Java 2 Platform, Standard Edition (J2SE). The platform uses Jav ...
5.0 release it is possible to utilize attribute-oriented programming right out of the box.
XDoclet XDoclet is an open-source code generation library that enables Attribute-oriented programming for Java via insertion of special Javadoc tags. It comes with a library of predefined tags, which simplify coding for various technologies: Java EE, ...
library makes it possible to use attribute-oriented programming approach in earlier versions of Java.


C#

The C# language has supported attributes from its very first release. These attributes was used to give run-time information and are not used by a preprocessor. Currently with source generators, you can use attributes to drive generation of additional code at compile-time.


UML

The
Unified Modeling Language The Unified Modeling Language (UML) is a general-purpose, developmental modeling language in the field of software engineering that is intended to provide a standard way to visualize the design of a system. The creation of UML was originally m ...
(UML) supports a kind of attribute called stereotypes.


Hack

The Hack programming language supports attributes. Attributes can be attached to various program entities, and information about those attributes can be retrieved at run-time via reflection.


Tools


Annotation Processing Tool (apt)

Spoon
an Annotation-Driven Java Program Transformer
XDoclet
a Javadoc-Driven Program Generator


References

* * *


External links

* Don Schwarz

* Sun ttps://www.jcp.org/en/jsr/detail?id=175 JSR 175
Attributes and Reflection
- sample chapter fro
Programming C#
book


Fraclet
An annotation-based programming model for th
Fractal
component model
Attribute Enabled Software Development
book Programming paradigms {{Comp-sci-stub