当前位置: X-MOL 学术arXiv.cs.SE › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
On the adoption, usage and evolution of Kotlin Features on Android development
arXiv - CS - Software Engineering Pub Date : 2019-07-21 , DOI: arxiv-1907.09003
Bruno G\'ois Mateus and Matias Martinez

Background: Google announced Kotlin as an Android official programming language in 2017, giving developers an option of writing applications using a language that combines object-oriented and functional features. Aims: The goal of this work is to understand the usage of Kotlin features considering four aspects: i) which features are adopted, ii) what is the degree of adoption, iii)when are these features added into Android applications for the first time, and iv) how the usage of features evolves along with applications' evolution. Method: Exploring the source code of 387 Android applications, we identify the usage of Kotlin features on each version application's version and compute the moment that each feature is used for the first time. Finally, we identify the evolution trend that better describes the usage of these features. Results: 15 out of 26 features are used on at least 50% of applications. Moreover, we found that type inference, lambda and safe call are the most used features. Also, we observed that the most used Kotlin features are those first included on Android applications. Finally, we report that the majority of applications tend to add more instances of 24 out of 26 features along with their evolution. {\bf Conclusions:} Our study generates 7 main findings. We present their implications, which are addressed to developers, researchers and tool builders in order to foster the use of Kotlin features to develop Android applications.

中文翻译:

Android 开发中 Kotlin 特性的采用、使用和演进

背景:谷歌在 2017 年宣布 Kotlin 作为 Android 官方编程语言,让开发人员可以选择使用一种结合了面向对象和函数特性的语言来编写应用程序。目的:这项工作的目标是从四个方面来了解 Kotlin 功能的使用情况:i)采用了哪些功能,ii)采用的程度如何,iii)这些功能何时首次添加到 Android 应用程序中, iv) 功能的使用如何随着应用程序的演变而演变。方法:探索 387 个 Android 应用的源代码,我们识别每个版本应用程序版本上 Kotlin 功能的使用情况,并计算每个功能第一次使用的时刻。最后,我们确定了更好地描述这些功能使用情况的演变趋势。结果:至少 50% 的应用程序使用了 26 个功能中的 15 个。此外,我们发现类型推断、lambda 和安全调用是最常用的功能。此外,我们观察到最常用的 Kotlin 功能是那些首先包含在 Android 应用程序中的功能。最后,我们报告说,大多数应用程序倾向于添加更多的 26 个特性中的 24 个实例以及它们的演变。{\bf 结论:}我们的研究产生了 7 个主要发现。我们展示了它们的影响,这些影响是针对开发人员、研究人员和工具构建者的,以促进使用 Kotlin 功能来开发 Android 应用程序。我们观察到,最常用的 Kotlin 功能是那些首先包含在 Android 应用程序中的功能。最后,我们报告说,大多数应用程序倾向于添加更多的 26 个特性中的 24 个实例以及它们的演变。{\bf 结论:}我们的研究产生了 7 个主要发现。我们展示了它们的影响,这些影响是针对开发人员、研究人员和工具构建者的,以促进使用 Kotlin 功能来开发 Android 应用程序。我们观察到,最常用的 Kotlin 功能是那些首先包含在 Android 应用程序中的功能。最后,我们报告说,大多数应用程序倾向于添加更多的 26 个特性中的 24 个实例以及它们的演变。{\bf 结论:}我们的研究产生了 7 个主要发现。我们展示了它们的影响,这些影响是针对开发人员、研究人员和工具构建者的,以促进使用 Kotlin 功能来开发 Android 应用程序。
更新日期:2020-07-29
down
wechat
bug