English
Related papers

Related papers: Characterizing the transition to Kotlin of Android…

200 papers

In software development there is a constant pressure to produce code faster and faster without compromising on quality. New tools supporting developers are created in response to this demand. Currently a new generation of such solutions is…

Software Engineering · Computer Science 2023-01-13 Mateusz Jaworski , Dariusz Piotrkowski

Kotlin is a relatively new programming language from JetBrains: its development started in 2010 with release 1.0 done in early 2016. The Kotlin compiler, while slowly and steadily becoming more and more mature, still crashes from time to…

Programming Languages · Computer Science 2020-12-14 Daniil Stepanov , Marat Akhin , Mikhail Belyaev

This paper aims to evaluate GitHub Copilot's generated code quality based on the LeetCode problem set using a custom automated framework. We evaluate the results of Copilot for 4 programming languages: Java, C++, Python3 and Rust. We aim to…

Software Engineering · Computer Science 2024-06-18 Ilja Siroš , Dave Singelée , Bart Preneel

Object-oriented code smells are well-known concepts in software engineering that refer to bad design and development practices commonly observed in software systems. With the emergence of mobile apps, new classes of code smells have been…

Software Engineering · Computer Science 2020-10-15 Sarra Habchi , Naouel Moha , Romain Rouvoy

The fast-paced evolution of Android APIs has posed a challenging task for Android app developers. To leverage Android's frequently released APIs, developers must often spend considerable effort on API migrations. Prior research and Android…

Software Engineering · Computer Science 2021-03-29 Maxime Lamothe , Weiyi Shang , Tse-Hsun Chen

Expecting the shipment of 1 billion Android devices in 2017, cyber criminals have naturally extended their vicious activities towards Google's mobile operating system. With an estimated number of 700 new Android applications released every…

Cryptography and Security · Computer Science 2014-10-29 Sebastian Neuner , Victor van der Veen , Martina Lindorfer , Markus Huber , Georg Merzdovnik , Martin Mulazzani , Edgar Weippl

Organ transplantation, which is the utilization of codes directly related to some specific functionalities to complete ones own program, provides more convenience for developers than traditional component reuse. However, recent techniques…

Software Engineering · Computer Science 2018-10-16 Shangwen Wang , Xiaoguang Mao , Yue Yu

Code cloning plays a very important role in open-source software engineering. The presence of clones within a project may indicate a need for refactoring, and clones between projects are even more interesting, since code migration takes…

Software Engineering · Computer Science 2021-08-16 Yaroslav Golubev , Timofey Bryksin

As part of a research on a novel in-process multiprogramming-language interoperability system, this study investigates the interoperability and usage of multiple programming languages within a large dataset of GitHub projects and Stack…

Programming Languages · Computer Science 2024-11-14 Tsvi Cherny-Shahar , Amiram Yehudai

Bug localization is well-known to be a difficult problem in software engineering, and specifically in compiler development, where it is beneficial to reduce the input program to a minimal reproducing example; this technique is more commonly…

Programming Languages · Computer Science 2019-09-17 Daniil Stepanov , Marat Akhin , Mikhail Belyaev

Enabling fully automated testing of mobile applications has recently become an important topic of study for both researchers and practitioners. A plethora of tools and approaches have been proposed to aid mobile developers both by…

Software Engineering · Computer Science 2018-01-22 Mario Linares Vasquez , Carlos Bernal-Cardenas , Kevin Moran , Denys Poshyvanyk

Software engineering research has always being concerned with the improvement of code completion approaches, which suggest the next tokens a developer will likely type while coding. The release of GitHub Copilot constitutes a big step…

Sometimes debates on programming languages are more religious than scientific. Questions about which language is more succinct or efficient, or makes developers more productive are discussed with fervor, and their answers are too often…

Software Engineering · Computer Science 2015-06-04 Sebastian Nanz , Carlo A. Furia

The use of programming languages such as Java and C in Open Source Software (OSS) has been well studied. However, many other popular languages such as XSL or XML have received minor attention. In this paper, we discuss some trends in OSS…

Programming Languages · Computer Science 2011-02-14 Siim Karus , Harald Gall

JavaScript (JS) is one of the most popular programming languages, and widely used for web apps and even backend development. Due to its dynamic nature, however, JS applications often have a reputation for poor software quality. As a…

Software Engineering · Computer Science 2024-09-12 Justus Bogner , Manuel Merkel

The packaging model of Android apps requires the entire code necessary for the execution of an app to be shipped into one single apk file. Thus, an analysis of Android apps often visits code which is not part of the functionality delivered…

Software Engineering · Computer Science 2015-11-23 Li Li , Tegawendé F. Bissyandé , Jacques Klein , Yves Le Traon

Android has been the most popular smartphone system with multiple platform versions active in the market. To manage the application's compatibility with one or more platform versions, Android allows apps to declare the supported platform…

Software Engineering · Computer Science 2020-09-01 Daoyuan Wu , Debin Gao , David Lo

Ever since the launch of ChatGPT in 2022, a rising concern is whether ChatGPT will replace programmers and kill jobs. Motivated by this widespread concern, we conducted an empirical study to systematically compare ChatGPT against…

Software Engineering · Computer Science 2023-10-04 Md Mahir Asef Kabir , Sk Adnan Hassan , Xiaoyin Wang , Ying Wang , Hai Yu , Na Meng

Marketplaces for distributing software products and services have been getting increasing popularity. GitHub, which is most known for its version control functionality through Git, launched its own marketplace in 2017. GitHub Marketplace…

Software Engineering · Computer Science 2022-08-02 Sk Golam Saroar , Waseefa Ahmed , Maleknaz Nayebi

We present LitmusKt - the first tool for litmus testing concurrent programs in Kotlin. The tool's novelty also lies in the fact that Kotlin is a multiplatform language, i.e., it compiles into multiple platforms, which means that the…

Programming Languages · Computer Science 2025-04-23 Denis Lochmelis , Evgenii Moiseenko , Yaroslav Golubev , Anton Podkopaev