Automated library mapping approach based on cross‐platform for mobile development programming languages

Ahmad Ahmad Muhammad, Abdelrahman Soliman, Hala Zayed, Ahmed H. Yousef, Sahar Selim
{"title":"Automated library mapping approach based on cross‐platform for mobile development programming languages","authors":"Ahmad Ahmad Muhammad, Abdelrahman Soliman, Hala Zayed, Ahmed H. Yousef, Sahar Selim","doi":"10.1002/spe.3281","DOIUrl":null,"url":null,"abstract":"Abstract Context The most popular mobile platforms, Android and iOS, are traditionally developed using native programming languages—Java and Kotlin for Android, and Objective‐C followed by Swift for iOS, respectively. Due to their popularity, there is always a demand to convert applications written for one of these two platforms to another. Cross‐platform mobile development is widely used as a solution where an application is written once and deployed on multiple platforms written in several other programming languages. One common cross‐platform approach that has been used recently by some research groups is the Trans‐Compilation approach. They focus on translating a program written in iOS into Android or vice versa. The main problem with their solutions is that library function mapping is not generalized and usually functions constitute most of the parts of any program. Objective This study aims to introduce an automatic library mapping approach for mobile programming languages. Method A library function of a source language will be automatically mapped to a corresponding function of the destination language by using the function structure for the two languages. The function structure includes the library to which the function belongs, the return type, parameter types, and the number of parameters. To test our approach, we map from Swift to Java. Results The results of our experiments show that our automatic library mapping approach achieves an average accuracy of 83.6% when tested on the most used libraries and outperforms current state‐of‐the‐art mapping techniques in terms of mapping accuracy. Conclusion These findings show that our automatic mapping approach is promising and can help to overcome the limitations of the trans‐compilation approaches.","PeriodicalId":21899,"journal":{"name":"Software: Practice and Experience","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"2023-10-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Software: Practice and Experience","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1002/spe.3281","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

Abstract Context The most popular mobile platforms, Android and iOS, are traditionally developed using native programming languages—Java and Kotlin for Android, and Objective‐C followed by Swift for iOS, respectively. Due to their popularity, there is always a demand to convert applications written for one of these two platforms to another. Cross‐platform mobile development is widely used as a solution where an application is written once and deployed on multiple platforms written in several other programming languages. One common cross‐platform approach that has been used recently by some research groups is the Trans‐Compilation approach. They focus on translating a program written in iOS into Android or vice versa. The main problem with their solutions is that library function mapping is not generalized and usually functions constitute most of the parts of any program. Objective This study aims to introduce an automatic library mapping approach for mobile programming languages. Method A library function of a source language will be automatically mapped to a corresponding function of the destination language by using the function structure for the two languages. The function structure includes the library to which the function belongs, the return type, parameter types, and the number of parameters. To test our approach, we map from Swift to Java. Results The results of our experiments show that our automatic library mapping approach achieves an average accuracy of 83.6% when tested on the most used libraries and outperforms current state‐of‐the‐art mapping techniques in terms of mapping accuracy. Conclusion These findings show that our automatic mapping approach is promising and can help to overcome the limitations of the trans‐compilation approaches.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
基于跨平台移动开发编程语言的自动库映射方法
最流行的移动平台,Android和iOS,传统上都是使用本地编程语言开发的,分别是Android的java和Kotlin, iOS的Objective - C和Swift。由于它们的流行,总是需要将为这两个平台之一编写的应用程序转换为另一个平台。跨平台移动开发是一种广泛使用的解决方案,即一次编写应用程序,并将其部署在使用多种其他编程语言编写的多个平台上。一些研究小组最近使用的一种常见的跨平台方法是编译方法。他们专注于将iOS上编写的程序翻译成Android,反之亦然。它们的解决方案的主要问题是库函数映射不是一般化的,通常函数构成任何程序的大部分部分。目的介绍一种面向移动编程语言的自动库映射方法。方法利用两种语言的函数结构,将源语言的库函数自动映射到目标语言的相应函数。函数结构包括函数所属的库、返回类型、形参类型和形参数量。为了测试我们的方法,我们从Swift映射到Java。实验结果表明,我们的自动图书馆映射方法在最常用的图书馆上达到了83.6%的平均精度,并且在映射精度方面优于当前最先进的映射技术。这些发现表明,我们的自动映射方法是有前途的,可以帮助克服翻译编译方法的局限性。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Algorithms for generating small random samples A comprehensive survey of UPPAAL‐assisted formal modeling and verification Large scale system design aided by modelling and DES simulation: A Petri net approach Empowering software startups with agile methods and practices: A design science research Space‐efficient data structures for the inference of subsumption and disjointness relations
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1