An Annotation-based API for Supporting Runtime Code Annotation Reading
Code annotations are the core of the main APIs and frameworks for enterprise development, and are widely used on several applications. However, despite these APIs and frameworks made advanced uses of annotations, the language API for annotation reading is far from their needs. In particular, annotation reading is still a relatively complex task, that can consume a lot of development time and that can couple the framework internal structure to its annotations. This paper proposes an annotation-based API to retrieve metadata from code annotations and populate an instance with meta-information ready to be used by the framework. The proposed API is based on best practices and approaches for metadata denition documented on patterns, and has been implemented by a framework named Esnge Metadata. We evaluated the approach by refactoring an existing framework to use it through Esnge Metadata. The original and the refactored versions are compared using several code assessment techniques, such as software metrics, DSM (Dependency Structure Matrix) and bad smells detection, followed by a qualitative analysis based on source code inspection. As a result, the case study revealed that the usage of the proposed API can reduce the coupling between the metadata reading code and the annotations.
Sun 22 Oct Times are displayed in time zone: Tijuana, Baja California change
13:30 - 14:00 Talk | Reactive Reflection in an FRP Language for Small-Scale Embedded Systems META Takuo WatanabeTokyo Institute of Technology File Attached | ||
14:00 - 14:30 Talk | Metaphysics: Towards a Robust Framework for Remotely Working with Potentially Broken Objects and Runtimes META File Attached | ||
14:30 - 15:00 Talk | An Annotation-based API for Supporting Runtime Code Annotation Reading META Phyllipe LimaINPE - National Institute for Space Research, Eduardo GuerraINPE - National Institute for Space Research, Marco NardesINPE - National Institute for Space Research, Andrea MocciUniversita della Svizzera italiana (USI), Gabriele BavotaUniversità della Svizzera italiana (USI), Michele LanzaUniversità della Svizzera italiana (USI) DOI |