Affordable Access

deepdyve-link
Publisher Website

Improving mobile app development using transpilers with maintainable outputs

Authors
  • Vendramini, Vinícius Jorge
  • Goldman, Alfredo
  • Mounié, Grégory
Publication Date
Oct 21, 2020
Identifiers
DOI: 10.1145/3422392.3422426
OAI: oai:HAL:hal-03000163v1
Source
Hal-Diderot
Keywords
Language
English
License
Unknown
External links

Abstract

Mobile application developers often target both iOS and Android in an effort to extend their target user base. There are several tools that can aid this development effort, allowing developers to maintain a single codebase for both platforms instead of two. These tools often face a few shortcomings, of which two are noteworthy: they are hard-to-replace dependencies in the codebase, and often present some type of obstacle for integrating platform-independent native code with the shared codebase. The goal of this work is to propose a new approach to creating cross-platform development tools that improves on these two aspects, and to analyze the viability of a real-world implementation of the proposed approach. An analysis of the current state of the practice indicates cross-platform compilers as a promising direction, and a study is made on the common concerns and challenges faced when developing these compilers. Based on these analyses, this work proposes the creation of a compiler that translates one platform's hand-written native code into maintainable native code for the other platform. The feasibility of implementing this approach is tested with the development of a proof-of-concept compiler from Swift to Kotlin. An analysis is made on the readability of the resulting prototype's output code, as well as other relevant metrics. The conclusion is that, while some trade-offs might be necessary, such an approach is viable if applied in an adequate ecosystem.

Report this publication

Statistics

Seen <100 times