SEJul 31, 2018

An Empirical Study on Quality of Android Applications written in Kotlin language

arXiv:1808.00025v37 citationsHas Code
Originality Synthesis-oriented
AI Analysis

This provides empirical evidence for developers and organizations on the benefits of adopting Kotlin in Android development, though it is incremental as it builds on existing quality measurement methods.

The paper studied the adoption and quality impact of Kotlin in open-source Android applications, finding that 11.26% of 2,167 applications used Kotlin and that introducing Kotlin code generally improved quality by reducing code smells compared to Java.

Context: During the last years, developers of mobile applications have the possibility to use new paradigms and tools for developing mobile applications. For instance, since 2017 Android developers have the official support to write Android applications using Kotlin language. Kotlin is programming language fully interoperable with Java that combines object-oriented and functional features. Objective: The goal of this paper is twofold. First, it aims to study the degree of adoption of Kotlin language on development of open-source Android applications and to measure the amount of Kotlin code inside Android applications. Secondly, it aims to measure the quality of Android applications that are written using Kotlin and to compare it with the quality of Android applications written using Java. Method: We first defined a method to detect Kotlin applications from a dataset of open-source Android applications. Then, we analyzed those applications to detect instances of code smells and computed an estimation of quality of the applications. Finally, we studied how the introduction of Kotlin code impacts on the quality of an Android application. Results: Our experiment found that 11.26% of applications from a dataset with 2,167 open-source applications have been written (partially or fully) using Kotlin language. We found that the introduction of Kotlin code increases the quality (in terms of presence of code smells) of the majority of the Android applications initially written in Java.

Code Implementations1 repo
Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes