Detalhes bibliográficos
Ano de defesa: |
2019 |
Autor(a) principal: |
OLIVEIRA, Victor Laerte de |
Orientador(a): |
TEIXEIRA, Leopoldo Motta |
Banca de defesa: |
Não Informado pela instituição |
Tipo de documento: |
Dissertação
|
Tipo de acesso: |
Acesso aberto |
Idioma: |
por |
Instituição de defesa: |
Universidade Federal de Pernambuco
|
Programa de Pós-Graduação: |
Programa de Pos Graduacao em Ciencia da Computacao
|
Departamento: |
Não Informado pela instituição
|
País: |
Brasil
|
Palavras-chave em Português: |
|
Link de acesso: |
https://repositorio.ufpe.br/handle/123456789/36041
|
Resumo: |
In 2017, Google announced Kotlin as one of the officially supported languages for Android development. Until then, only Java and C++ were part of this list. Among the reasons for choosing Kotlin, Google mentioned it is “concise, expressive, and designed to be type and null-safe”. Another important reason is that Kotlin is a language fully interoperable with Java and runs on the JVM. Despite Kotlin’s rapid rise in the industry, little has been done in academia to understand how developers are dealing with its adoption. This research aims to gather evidence to understand how developers are dealing with the recent adoption of Kotlin as an official language for Android development, their perception about the advantages and disadvantages related to its usage, and the most common problems faced by them. This research was conducted using the concurrent triangulation strategy, which is a mixed-method approach. We performed a thorough analysis of 9,405 questions related to Kotlin development for the Android platform on StackOverflow. Concurrently, we also conducted a basic qualitative research interviewing seven Android developers that use Kotlin, to confirm and cross-validate our results. Our study reveals that developers do seem to find the language easy to understand and to be adopted. This perception begins to change when the functional paradigm becomes more evident. According to the developers, readability and legibility are compromised if developers overuse the functional flexibility that the language provides. The developers also consider that Kotlin increases the quality of the produced code, mainly due to its null-safety guarantees. Nonetheless, they also report that it can also become a challenge when interoperating with Java, despite of the interoperability being considered as an advantage. While adopting Kotlin requires some care from developers, the benefits of its adoption on Android seem to bring many advantages to the platform according to the developers, especially in the aspect of adopting a more modern language while maintaining the consolidated Java-based development environment. |