Characterizing the Usage, Evolution and Impact of Java Annotations in Practice

  title={Characterizing the Usage, Evolution and Impact of Java Annotations in Practice},
  author={Zhongxing Yu and C. Bai and L. Seinturier and Monperrus Martin},
  journal={IEEE Transactions on Software Engineering},
  • Zhongxing Yu, C. Bai, +1 author Monperrus Martin
  • Published 2020
  • Computer Science
  • IEEE Transactions on Software Engineering
  • Annotations have been formally introduced into Java since Java 5. Since then, annotations have been widely used by the Java community for different purposes, such as compiler guidance and runtime processing. Despite the ever-growing use, there is still limited empirical knowledge about the actual usage of annotations in practice, the changes made to annotations during software evolution, and the potential impact of annotations on code quality. To fill this gap, we perform the first large-scale… CONTINUE READING
    3 Citations
    A Metadata Handling API for Framework Development: a Comparative Study
    • PDF
    Annotation practices in Android apps
    • A. K. Jha, S. Nadi
    • Computer Science
    • 2020 IEEE 20th International Working Conference on Source Code Analysis and Manipulation (SCAM)
    • 2020
    • Highly Influenced
    On the adoption, usage and evolution of Kotlin features in Android development
    • 4
    • PDF


    How Annotations are Used in Java: An Empirical Study
    • 19
    • PDF
    Adoption and use of Java generics
    • 46
    • PDF
    Design Patterns for Annotation-based APIs
    • 2
    • PDF
    Mining billions of AST nodes to study actual and potential usage of Java language features
    • 87
    • PDF
    Understanding the use of lambda expressions in Java
    • 41
    • PDF
    Revisiting Assert Use in GitHub Projects
    • 9
    • PDF
    aComment: mining annotations from comments and code to detect interrupt related concurrency bugs
    • 84
    • PDF
    Challenges for Static Analysis of Java Reflection - Literature Review and Empirical Study
    • 59
    • PDF
    An empirical investigation into a large-scale Java open source code repository
    • 93
    • PDF
    Contracts in the Wild: A Study of Java Programs
    • 8
    • PDF