Depends-Kotlin:一个跨语言的Kotlin依赖提取器
Depends-Kotlin: A Cross-Language Kotlin Dependency Extractor
AI总结:
针对Kotlin依赖分析工具缺乏的问题,提出Depends-Kotlin,可提取Kotlin及跨语言依赖,实验证明其高准确性和性能。
摘要:
自2017年谷歌将Kotlin作为开发Android应用的官方编程语言以来,Kotlin在Android开发中得到了广泛采用。然而,与Java相比,针对Kotlin代码依赖分析的支持有限,而依赖分析是软件分析的基础。为弥补这一差距,我们开发了Depends-Kotlin,用于提取Kotlin源代码中的实体及其依赖关系。Depends-Kotlin不仅支持提取Kotlin代码中实体间的依赖,还能提取Kotlin与Java之间的依赖关系。以三个开源的Kotlin-Java混合项目为实验对象,Depends-Kotlin在解析Kotlin-Kotlin和Kotlin-Java依赖关系方面展现了高准确性和高性能。Depends-Kotlin的源代码及所用数据集已在https://github.com/XYZboom/depends-kotlin上公开,我们还提供了展示Depends-Kotlin的屏幕录像,链接为https://youtu.be/ZPq8SRhgXzM。
英文摘要:
Since Google introduced Kotlin as an official programming language for developing Android apps in 2017, Kotlin has gained widespread adoption in Android development. However, compared to Java, there is limited support for Kotlin code dependency analysis, which is the foundation to software analysis. To bridge this gap, we develop Depends-Kotlin to extract entities and their dependencies in Kotlin source code. Not only does Depends-Kotlin support extracting entities' dependencies in Kotlin code, but it can also extract dependency relations between Kotlin and Java. Using three open-source Kotlin-Java mixing projects as our subjects, Depends-Kotlin demonstrates high accuracy and performance in resolving Kotlin-Kotlin and Kotlin-Java dependencies relations. The source code of Depends-Kotlin and the dataset used have been made available at https: //github.com/XYZboom/depends-kotlin. We also provide a screen-cast presenting Depends-Kotlin at https://youtu.be/ZPq8SRhgXzM.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。